Este atributo, también denominado FORMAT, describe cómo aplicar un formato a un campo al mostrarlo en un informe o usarlo en un cálculo.
Cómo: Referencia: |
En orígenes de datos FOCUS (no emplean el atributo ACTUAL), USAGE también especifica cómo almacenar el campo. En otros tipos de orígenes de datos, asigne un valor de USAGE correspondiente al valor ACTUAL, para identificar el campo como el mismo tipo de datos usado para almacenarlo en el origen de datos. Si los datos se almacenan en modo alfanumérico, asigne USAGE según cómo vaya a aparecer el campo en sus informes. La conversión se realiza automáticamente. Para instrucciones sobre la correspondencia entre los valores de ACTUAL y los valores de USAGE, consulte la documentación del adaptador de datos específico.En orígenes de datos secuenciales, VSAM e ISAM, consulte Cómo describir un origen de datos secuencial, VSAM o ISAM. Para otros tipos de orígenes de datos, consulte la documentación de su adaptador.
Además de seleccionar el tipo y longitud de los datos, también puede especificar opciones de visualización, como el formato de fechas, símbolos de dólar variable y supresión de ceros. Use estas opciones para personalizar el aspecto del campo en los informes.
USAGE = tl[d]
donde:
Es el tipo de datos. Los valores válidos son A (alfanumérico), F (punto flotante de precisión simple), D (punto flotante de precisión doble), I (número entero), P (decimal empaquetado), D, W, M, Q o Y, utilizados en una combinación válida (fecha), y TX (texto).
Es una especificación de longitud. La especificación varía de acorde al tipo de datos. Para más información, consulte la sección dedicada a cada tipo de datos. No especifique una longitud para los campos de formato de fecha.
Es una o varias opciones de visualización. Cada tipo de datos ofrece opciones de visualización diferentes. Para más información, consulte la sección dedicada a cada tipo de datos.
El valor completo de USAGE no puede superar los ocho caracteres.
Los valores que especifique para el tipo y longitud del campo determinan el número de posiciones de impresión, asignado a la visualización y almacenamiento del campo. Las opciones de visualización solo afectan a los campos mostrados o imprimidos. No se encuentran activos para recuperaciones que no sean de visualización, como los archivos de extracción.
Nota: Si un campo numérico no puede visualizarse con un formato USAGE determinado (por ejemplo, el resultado de agregación es demasiado grande), aparecen asteriscos.
Para más información y ejemplos, consulte la sección dedicada a cada tipo de formato.
Tenga en cuenta estas reglas al usar USAGE:
No se puede cambiar la especificación de tipo en orígenes de datos FOCUS. Puede cambiar la especificación de longitud de los campos I, F, D y P, ya que afecta únicamente a su visualización, no al almacenamiento. No se puede cambiar la parte decimal de la especificación de longitud de los campos P. Solo puede cambiar la especificación de longitud de los campos A (alfanuméricos), si utiliza el recurso REBUiLD. Puede cambiar las opciones de visualización en cualquier momento.
Puede especificar muchos tipos de formatos:
En algunas aplicaciones, como la asignación de un valor de fecha mediante la función DECODE, puede que desee usar campos alfanuméricos, de número entero o decimal empaquetado, con las opciones de visualización, que ofrecen una funcionalidad de fechas parcial.
Puede usar este formato para los números enteros. Un número entero es cualquier valor compuesto de los dígitos 0-9, sin carácter decimal.
Puede usar los campos de número entero con opciones de visualización de fechas, para ofrecer un soporte de fechas limitado. Este uso de los campos de número entero aparece descrito en Formatos numéricos y alfanuméricos con opciones de visualización de fechas.
El tipo de USAGE de número entero es I. Consulte Opciones de visualización numéricas. El formato de la especificación de longitud es:
n
donde:
Es el número de dígitos mostrado. La longitud máxima es 11, incluidos los dígitos y, si el campo contiene un valor negativo, un signo de menos al principio. También puede especificar un número de posiciones decimales (hasta n - 1) para que el número aparezca con un carácter decimal antes del número de dígitos especificado.
Por ejemplo:
Formato | Visualización |
---|---|
I6 | 4316 |
I6.2 | 43.16 |
I2 | 22 |
I4 | -617 |
Puede usar el formato de punto flotante de precisión doble con cualquier valor compuesto de los dígitos 0-9 y un carácter decimal opcional.
El tipo de USAGE de punto flotante de precisión doble es D. Consulte Opciones de visualización numéricas, para ver las opciones de visualización compatibles. El formato de la especificación de longitud es:
t[.s]
donde:
Es el número de caracteres que se va a mostrar, con un máximo de 33, incluidos los dígitos numéricos, un punto decimal opcional y, si el campo contiene un valor negativo, un signo de menos al principio. El número admitido de dígitos significativos varía según el entorno operativo.
Es el número de dígitos posteriores al punto decimal. 31 y debe ser inferior a t.
Por ejemplo:
Formato | Visualización |
---|---|
D8.2 | 3,187.54 |
D8 | 416 |
En el caso de D8.2, el 8 representa el número máximo de posiciones, incluidos el punto y las posiciones decimales. El 2 representa cuántos de estas ocho posiciones son decimales. Las comas quedan incluidas automáticamente en la visualización y no forman parte del total.
Puede usar el formato de punto flotante de precisión simple con cualquier número, incluidos los que presenten posiciones decimales. El número está compuesto por los dígitos 0-9, incluyendo un carácter decimal opcional. Este formato se utiliza con número decimales más pequeños. A diferencia del formato de punto flotante de precisión doble, su longitud no puede superar las nueve posiciones.
El tipo de USAGE de punto flotante de precisión simple es F. Las opciones de visualización compatibles están descritas en Opciones de visualización numéricas. El formato de la especificación de longitud es:
t[.s]
donde:
Es el número de caracteres que se va a mostrar, con un máximo de 33, incluidos los dígitos numéricos, un punto decimal opcional y, si el campo contiene un valor negativo, un signo de menos al principio. El número admitido de dígitos significativos varía según el entorno operativo.
Es el número de dígitos posteriores al punto decimal. Puede tener hasta 31 dígitos y debe ser inferior a t.
Por ejemplo:
Formato | Visualización |
---|---|
F5.1 | 614.2 |
F4 | 318 |
Puede usar el formato de decimal empaquetado con cualquier número, incluidos los números decimales. Un número decimal es cualquier valor compuesto de los dígitos 0-9, incluido el carácter decimal opcional.
También puede usar los campos de decimal empaquetado con opciones de visualización de fechas, para ofrecer un soporte de fechas limitado. Consulte Formatos numéricos y alfanuméricos con opciones de visualización de fechas.
El tipo de USAGE de decimal empaquetado es P. Las opciones de visualización compatibles están descritas en Opciones de visualización numéricas.
El formato de la especificación de longitud es:
t[.s]
donde:
Es el número de caracteres que se va a mostrar (hasta 33), incluido un máximo de 31 dígitos, un punto decimal opcional y, si el campo contiene un valor negativo, un signo de menos al principio.
Es el número de dígitos posteriores al punto decimal. Puede tener hasta 31 dígitos y debe ser inferior a t.
Por ejemplo:
Formato | Visualización |
---|---|
P9.3 | 4168.368 |
P7 | 617542 |
Puede usar las opciones de visualización para editar los formatos numéricos. Estas opciones solo afectan al modo en que se imprimen los datos del campo o aparecen en la pantalla, no a cómo se encuentran almacenados.
Opción Editar |
Significado |
Efecto |
---|---|---|
- |
Signo de menos |
Muestra un signo de menos a la derecha de los datos numéricos, negativos. Nota: No admitido en las opciones de formato B, E, R, T, DMY, MDY, YMD. |
% |
Signo de porcentaje |
Muestra un signo de porcentaje junto con datos numéricos. No calcula el porcentaje, |
A |
Supresión negativa |
Muestra el valor absoluto del número, pero no afecta al valor almacenado.
|
B |
Corchete negativo |
Coloca los números negativos entre paréntesis |
c |
Suprimir comas |
Suprime la visualización de comas. Utilizado con las opciones de formato numérico M y N (símbolo de dólar variable y no variable) y el formato de datos D (punto flotante de precisión doble). |
C |
Editar comas |
Inserta una coma después de cada tercer dígito significativo o, en el caso de la notación decimal continental, un punto. |
DMY |
Día-Mes-Año |
Muestra los datos alfanuméricos o de número entero como una fecha con la forma día/mes/año. |
E |
Notación científica |
Muestra únicamente los dígitos significativos. |
L |
Ceros iniciales |
Añade ceros iniciales. |
M |
Símbolo de divisa variable ($ para la página de código US) |
Coloca un símbolo de divisa variable a la izquierda del mayor dígito significativo. El símbolo de divisa predeterminado depende de la página de código. Puede usar el comando SET CURRSYMB=symbol para especificar cualquier carácter como símbolo de divisa o unos de los códigos de divisa siguientes: USD o '$' especifica Dólares US. GBP especifica Libra Esterlina. JPY especifica Yen japonés o Yuan chino. EUR especifica Euro. |
MDY |
Mes-Día-Año |
Muestra los datos alfanuméricos o de número entero como una fecha con la forma mes/día/año. |
N |
Símbolo de divisa fija ($ para la página de código US) |
Coloca un símbolo de divisa a la izquierda del campo. El símbolo solo aparece en la primera línea de detalles de cada página. El símbolo de divisa predeterminado depende de la página de código. Puede usar el comando SET CURRSYMB=symbol para especificar cualquier carácter como símbolo de divisa o unos de los códigos de divisa siguientes: USD o '$' especifica Dólares US. GBP especifica Libra Esterlina. JPY especifica Yen japonés o Yuan chino. EUR especifica Euro. |
R |
Crédito (CR) negativo |
Coloca CR después de los números negativos. |
S |
Suprimir ceros |
Si el valor de datos es cero, imprime un espacio en blanco en su lugar. |
T |
Traslación de mes |
Muestra el mes como una abreviación de tres caracteres. |
YMD |
Año-Mes-Día |
Muestra los datos alfanuméricos o de número entero como una fecha con la forma año/mes/día. |
La tabla siguiente presenta ejemplos de las opciones de visualización disponibles para los campos numéricos.
Opción |
Formato |
Datos |
Visualización |
---|---|---|---|
Signo de menos |
I2- D7- F7.2- |
-21 -6148 -8878 |
21- 6148- 8878.00- |
Signo de porcentaje |
I2% D7% F3.2% |
21 6148 48 |
21% 6,148% 48.00% |
Supresión de comas |
D6c D7Mc D7Nc |
41376 6148 6148 |
41376 $6148 $ 6148 |
Inclusión de comas |
I6C |
41376 |
41,376 |
Supresión de ceros |
D6S |
0 |
|
Corchete negativo |
I6B |
-64187 |
(64187) |
Crédito negativo |
I8R |
-3167 |
3167 CR |
Ceros iniciales |
F4L |
31 |
0031 |
Dólar variable |
D7M |
6148 |
$6,148 |
Dólar no variable |
D7N |
5432 |
$ 5,432 |
Notación científica |
D12.5E |
1234.5 |
0.12345D+04 |
Año/mes/día |
I6YMD I8YYMD |
980421 19980421 |
98/04/21 1998/04/21 |
Mes/día/año |
I6MDY I8MDYY |
042198 04211998 |
04/21/98 04/21/1998 |
Día/mes/año |
I6DMY I8DMYY |
210498 21041998 |
21/04/98 21/04/1998 |
Traslación de mes |
I2MT |
07 |
JUL |
Puede combinar muchas de las opciones de visualización:
Formato |
Datos |
Visualización |
---|---|---|
I5CB |
-61874 |
(61,874) |
Puede especificar las opciones en cualquier orden. Las opciones M y N (símbolo de dólar variable y no variable) y el formato de datos D (punto flotante de precisión doble) invocan automáticamente la opción C (coma). Las opciones L y S no pueden usarse de forma conjunta. La opción T (trasladar) puede colocarse en cualquier lugar de una especificación USAGE alfanumérica o de número entero, que incluya la opción de visualización M (mes). Las opciones de visualización de fechas (D, M, T e Y), que no pueden usarse con campos de punto flotante, aparecen descritas en Formatos numéricos y alfanuméricos con opciones de visualización de fechas.
Cómo: Referencia: |
Puede seleccionar un símbolo de divisa para mostrarlo en la salida de informe, independientemente del símbolo de divisa predeterminado, configurado para el Soporte de lengua nacional (NLS). Use el formato de símbolo de divisa extendido en lugar de la opción de visualización de dólar variable (M) o no variable (N). Al usar la opción de visualización de dólar variable (M) o no variable (N), se muestra el símbolo de divisa asociado a la página de código predeterminada. Por ejemplo, al usar una página de código Inglés americano, se muestra el símbolo de dólar.
El formato de símbolo de divisa extendido le permite mostrar un símbolo diferente al de dólar. Por ejemplo, puede mostrar el símbolo de dólar estadounidense, libra esterlina, yen japonés, yuan chino o euro. El soporte de símbolo de divisa extendido está disponible para formatos numéricos (I, D, F y P). En Developer Studio, estos formatos se seleccionan desde el cuadro de diálogo Formatos.
Los formatos de símbolo de divisa extendida están especificados como combinaciones de dos caracteres en las últimas posiciones de cualquier formato de visualización numérico. El primer carácter de la combinación puede ser un signo de exclamación (!) o dos puntos (:). Se recomienda usar el carácter de dos puntos debido a que funciona en todas las páginas de código ASCII y EBCDIC. El signo de exclamación no es consistente en todas las páginas de código EBCDIC y puede dar lugar a comportamientos inesperados si su página de código lo traduce de una manera diferente. La tabla siguiente lista las opciones admitidas de visualización de divisas extendidas:
Opción de visualización |
Descripción |
Ejemplo |
---|---|---|
:d o !d |
Signo de dólar fijo. |
D12.2:d |
:D o !D |
Signo de dólar variable. |
D12.2:D |
:e o !e |
Signo de euro fijo. |
F9.2:e |
:E o !E |
Signo de euro variable en el lado izquierdo. |
F9.2:E |
:F o !F |
Signo de euro variable en el lado derecho. |
F9.2:F |
:l o !l |
Signo de libra fija. |
D12.1:l |
:L o !L |
Signo de libra variable. |
D12.1:L |
:y o !y |
Símbolo de yen japonés fijo o yuan chino fijo. |
I9:y |
:Y o !Y |
Símbolo de yen japonés variable o yuan chino variable. |
I9:Y |
Tenga en cuenta estas indicaciones:
numeric_format {:|!}option
donde:
Es un formato numérico válido (tipo de datos I, D, F o P).
Requerido. El signo de exclamación no es consistente en todas las páginas de código EBCDIC y puede dar lugar a comportamientos inesperados si su página de código lo traduce de una manera diferente. Es recomendable utilizar el símbolo de dos puntos, ya que no varía de una página de código a otra.
Determina el símbolo de divisa que se muestra y si el símbolo es variable o no variable. Los valores posibles son:
d, muestra un signo de dólar no variable.
D, muestra un signo de dólar variable.
e, muestra un signo de euro no variable.
E, muestra un símbolo de euro variable en el lado izquierdo.
F, muestra un símbolo de euro variable en el lado derecho.
l, muestra un signo de libra esterlina no variable.
L, muestra un signo de libra esterlina variable.
y, muestra un símbolo de yen japonés no variable o yuan chino no variable.
Y, muestra un símbolo de yen japonés variable o yuan chino variable.
La opción de divisa extendida debe estar en las últimas posiciones del formato.
La siguiente solicitud muestra el símbolo de euro.
SET PAGE-NUM = OFF TABLE FILE CENTORD PRINT PRODNAME QUANTITY PRICE/D10.2!E BY ORDER_DATE WHERE QUANTITY GT 700; ON TABLE SET STYLE * TYPE = REPORT, GRID = OFF,$ ENDSTYLE END
La salida es:
o
Se abre el cuadro de diálogo Formato.
En el ejemplo siguiente se va a añadir un símbolo de euro variable a un campo.
Al ejecutar el informe, aparecerá un símbolo de euro directamente a la izquierda de los valores del campo PRICE:
Cuando se asigna un valor con posiciones decimales a un campo numérico, si hay más posiciones decimales en el valor que lo especificado en la descripción de longitud del campo, el valor queda redondeado a un tamaño aceptable, antes de ser mostrado o almacenado. El valor se redondea hacia abajo cuando el primer dígito decimal extra es inferior a cinco, o hacia arriba, cuando es igual o mayor que cinco (aunque se introduce una consideración adicional para los valores de punto flotante).
Por ejemplo, considere un campo de decimal empaquetado con dos posiciones decimales
FIELDNAME = PRESSURE, FORMAT = P8.2, $
al que se le asigna un valor con cuatro posiciones decimales:
PRESSURE = 746.1289
El primer dígito extra (es decir, el primero después de la longitud especificada de dos posiciones decimales) es 8. Puesto que el 8 es mayor o igual a cinco, el valor se redondea hacia arriba y PRESSURE se convierte en:
746.13
Los detalles del redondeo se manejan del siguiente modo para estos formatos numéricos:
Tenga en cuenta que, si la porción decimal de un valor de punto flotante, de acorde a la representación interna con la notación de punto flotante hexadecimal, está repetida (no es de terminación), el número hexadecimal repetido se resuelve como un número no repetido, ligeramente más bajo, y queda almacenado como el valor del campo. En estos casos, si hubiese habido un cinco (se hubiese redondeado) en el valor original del dígito que se va a redondear, este se hubiese convertido en un cuatro (redondeado hacia abajo) en el valor inferior almacenado.
Por ejemplo, considere un campo de punto flotante de precisión doble con una posición decimal
FIELDNAME = VELOCITY, FORMAT = D5.1, $
al que se le asigna un valor con dos posiciones decimales:
VELOCITY = 1.15
Este valor queda almacenado como un número ligeramente inferior, debido a circunstancias especiales de la aritmética de puntos flotantes, como se ha descrito anteriormente:
1.149999
Mientras que el número original, 1.15, hubiese quedado redondeado hacia arriba hasta 1.2 (el primer dígito extra era igual o mayor que 5), el número almacenado es ligeramente inferior a 1.15 (1.149999) y, como ahora el primer dígito extra es inferior a cinco (4, en este caso), se redondea hacia abajo hasta llegar a 1.1. En resumen:
format: D5.1 entered: 1.15 stored: 1.149999 rounded: 1.1 displayed: 1.1
Referencia: |
Puede usar el formato alfanumérico para interpretar cualquier valor como una secuencia de caracteres, compuesto por cualquier combinación de dígitos, letras y otros caracteres.
También puede usar los campos alfanuméricos con opciones de visualización de fechas, para ofrecer un soporte de fechas limitado. Este uso de los campos alfanuméricos aparece descrito en Formatos numéricos y alfanuméricos con opciones de visualización de fechas.
El tipo de USAGE alfanumérico es A. El formato de la especificación de longitud es n, donde n es el número máximo de caracteres del campo. Puede tener hasta 3968 bytes en un campo alfanumérico perteneciente a un segmento de archivo FOCUS, y hasta 4096 en un segmento de archivo XFOCUS. Puede tener hasta 4095 bytes en un origen de datos secuencial de formato fijo. Puede definir la longitud en el archivo máster, o en un comando DEFINE FILE o COMPUTE.
Por ejemplo:
Formato |
Visualización |
---|---|
A522 |
The minutes of today's meeting were submitted... |
A2 |
B3 |
A24 |
127-A429-BYQ-49 |
Las opciones de visualización numéricas, estándar, no están disponibles en el formato de datos alfanumérico. Sin embargo, puede imprimir los datos alfanuméricos bajo el control de un patrón proporcionado en hora de ejecución. Por ejemplo, si está mostrando un códifo de producto por partes, con cada una separada por un "-", incluya lo siguiente en un comando DEFINE:
PRODCODE/A11 = EDIT (fieldname,'999-999-999') ;
donde:
Es el nombre del campo existente, no el nombre del campo definido recientemente.
Si el valor es 716431014, PRODCODE aparece como 716-431-014. Consulte el manual Cómo crear informes con el lenguaje WebFOCUS , para más información.
El formato de fecha le permite definir un campo como fecha, manipular su valor y mostrarlo de un modo apropiado a la fecha. Mediante el formato de fecha, puede:
Referencia: |
El formato de la fecha no especifica un tipo o una longitud. En cambio, especifica opciones de componente de fecha (D, W, M, Q, Y e YY) y opciones de visualización. Estas opciones aparecen en el diagrama siguiente.
Opción de visualización |
Significado |
Efecto |
---|---|---|
D |
Día |
Imprime un valor de 1 a 31 para el día. |
M |
Mes |
Imprime un valor de 1 a 12 para el mes. |
Y |
Año |
Imprime un año de dos dígitos. |
YY |
Año de cuatro dígitos |
Imprime un año de cuatro dígitos. |
T |
Traducir mes o día |
Imprime una abreviación del mes de tres letras mayúsculas, si M se encuentra incluida en la especificación de USAGE. De lo contrario, imprime el día de la semana. |
t |
Traducir mes o día |
Funciona igual que la T mayúscula (descrita anteriormente), exceptuando la primera letra del mes o día, que está en mayúscula, y las letras posteriores, mostradas en minúscula.* |
TR |
Traducir mes o día |
Funciona igual que la T mayúscula (descrita anteriormente), aunque muestra el nombre completo del mes o del día, en lugar de una abreviación. |
tr |
Traducir mes o día |
Funciona igual que la t minúscula (descrita anteriormente), aunque muestra el nombre completo del mes o del día, en lugar de una abreviación.* |
Q |
Trimestre |
Imprime Q1 - Q4. |
W |
Día de la semana |
Si está incluido en una especificación USAGE con otras opciones de componente de fecha, imprime una abreviación de tres letras mayúsculas del día de la semana. Si es la única opción de componente de fecha en la especificación de USAGE, imprime el número del día de la semana (1-7; Mon=1). |
w |
Día de la semana |
Funciona igual que la W mayúscula (descrita anteriormente), exceptuando la primera letra, que está en mayúscula, y las letras posteriores, en minúscula.* |
WR |
Día de la semana |
Funciona igual que la W mayúscula (descrita anteriormente), aunque muestra el nombre completo del día, en lugar de una abreviación. |
wr |
Día de la semana |
Funciona igual que la w minúscula (descrita anteriormente), aunque muestra el nombre completo del día, en lugar de una abreviación.* |
J[UL]or JULIAN |
Formato juliano |
Imprime la fecha en formato juliano. |
YYJ[UL] |
Formato juliano |
Imprime una fecha juliana en el formato YYYYDDD. El formato de 7 dígitos muestra el año de cuatro dígitos y el número de días a partir Enero 1. Por ejemplo, Enero 3, 2001 sería 2001003 en formato juliano. |
*Nota: Al usar estas opciones de visualización, asegúrese de que estén almacenadas en minúscula, en el archivo máster.
Las siguientes combinaciones de componentes de fecha no se admiten en formatos de fecha:
I2M, A2M, I2MD, A2MD
Los formatos Y, YY y M no son fechas inteligentes. Los formatos de fecha inteligente YMD y YYMD se almacenan como derivaciones de la fecha base 12/31/1900. Los formatos de fecha inteligente YM, YQ, YYM y YYQ se almacenan como derivaciones de la fecha base 01/1901. Los formatos W se almacenan como números enteros con una longitud de visualización de 1; contienen valores 1-7 que representan los días de la semana. Los formatos Y, YY y M se almacenan como números enteros. Y y M tienen longitudes de visualización de dos. La longitud de visualización de YY es cuatro. Tenga en cuenta estos dos factores importantes a la hora de usar los formatos de campos Y e YY:
Esta tabla explica el comportamiento de los formatos de fecha. Las columnas indican el número de dígitos de entrada de un formato de fecha. Las filas indican el uso o formato del campo. La intersección de la fila y la columna describe el resultado de la entrada y el formato.
Formato de fecha |
1 |
2 |
3 |
4 |
---|---|---|---|---|
YYMD |
* |
* |
CC00/0m/dd |
CC00/mm/dd |
MDYY |
* |
* |
* |
* |
DMYY |
* |
* |
* |
* |
YMD |
* |
* |
CC00/0m/dd |
CC00/mm/dd |
MDY |
* |
* |
* |
* |
DMY |
* |
* |
* |
* |
YYM |
CC00/0m |
CC00/mm |
CC0y/mm |
CCyy/mm |
MYY |
* |
* |
* |
* |
YM |
CC00/0m |
CC00/mm |
CC0y/mm |
CCyy/mm |
MY |
* |
* |
0m/CCyy |
mm/CCyy |
M |
0m |
mm |
* |
* |
YYQ |
CC00/q |
CC0y/q |
CCyy/q |
0yyy/q |
QYY |
* |
* |
q/CCyy |
* |
YQ |
CC00/q |
CC0y/q |
CCyy/q |
0yyy/q |
QY |
* |
* |
q/CCyy |
* |
Q |
q |
* |
* |
* |
JUL |
00/00d |
00/0dd |
00/ddd |
0y/ddd |
YYJUL |
CC00/00d |
CC00/0dd |
CC00/ddd |
CC0y/ddd |
YY |
000y |
00yy |
0yyy |
yyyy |
Y |
0y |
yy |
* |
* |
D |
0d |
dd |
* |
* |
W |
w |
* |
* |
* |
Formato de fecha |
5 |
6 |
7 |
8 |
---|---|---|---|---|
YYMD |
CC0y/mm/dd |
CCyy/mm/dd |
0yyy/mm/dd |
yyyy/mm/dd |
MDYY |
0m/dd/CCyy |
mm/dd/CCyy |
0m/dd/yyyy |
mm/dd/yyyy |
DMYY |
0d/mm/CCyy |
dd/mm/CCyy |
0d/mm/yyyy |
dd/mm/yyyy |
YMD |
CC0y/mm/dd |
CCyy/mm/dd |
0yyy/mm/dd |
yyyy/mm/dd |
MDY |
0m/dd/CCyy |
mm/dd/CCyy |
0m/dd/yyyy |
mm/dd/yyyy |
DMY |
0d/mm/CCyy |
dd/mm/CCyy |
0d/mm/yyyy |
dd/mm/yyyy |
YYM |
0yyy/mm |
yyyy/mm |
* |
* |
MYY |
0m/yyyy |
mm/yyyy |
* |
* |
YM |
0yyy/mm |
yyyy/mm |
* |
* |
MY |
0m/yyyy |
mm/yyyy |
* |
* |
M |
* |
* |
* |
* |
YYQ |
yyyy/q |
* |
* |
* |
QYY |
q/yyyy |
* |
* |
* |
YQ |
yyyy/q |
* |
* |
* |
QY |
q/yyyy |
* |
* |
* |
Q |
* |
* |
* |
* |
JUL |
yy/ddd |
* |
* |
* |
YYJUL |
CCyy/ddd |
0yyy/ddd |
yyyy/ddd |
* |
YY |
* |
* |
* |
* |
Y |
* |
* |
* |
* |
D |
* |
* |
* |
* |
W |
* |
* |
* |
* |
Nota:
Puede controlar los separadores cuando aparece la fecha. En formatos de fecha básicos, como YMD o MDYY, los componentes de fecha están separados por una barra diagonal (/). Lo mismo sucede con el formato año-mes, que aparece con el año y el trimestre separados por un espacio (por ejemplo, 94 Q3 o Q3 1994). Los formatos de componente único solo muestran el número o nombre individual.
El carácter de separación también puede ser un punto, un guión o un espacio, o no aparecer. La tabla siguiente muestra las especificaciones de USAGE para cambiar el carácter de separación.
Formato |
Visualización |
---|---|
YMD |
93/12/24 |
Y.M.D |
93.12.24 |
Y-M |
93-12 |
YBMBD |
93 12 24 (La letra B indica espacios en blanco.) |
Y|M|D |
931224 (El símbolo de concatenación (|) elimina el carácter de separación.) |
Nota:
Los meses y días númericos pueden reemplazarse por una traslación, como ENE, Enero, Mié o Miércoles. El mes o día trasladado puede abreviarse en tres caracteres o estar completamente deletreado. Puede estar en mayúsculas o minúsculas. Además, el día de la semana (lunes, por ejemplo) puede añadirse al principio o al final de la fecha. Todas estas opciones son independientes entre sí.
Traslación |
Visualización |
---|---|
MT |
JAN |
Mt |
Jan |
MTR |
JANUARY |
Mtr |
January |
WR |
MONDAY |
wr |
Monday |
El diagrama siguiente muestra los formatos de ejemplo USAGE y ACTUAL para datos almacenados en un origen de datos que no es FOCUS. La columna Valor muestra el valor de datos real, mientras que la columna Visualización indica cómo aparecen los datos.
USAGE |
ACTUAL |
Valor |
Visualización |
---|---|---|---|
wrMtrDYY |
A6YMD |
990315 |
Monday, March 15 1999 |
YQ |
A6YMD |
990315 |
99 Q1 |
QYY |
A6YMD |
990315 |
Q1 1999 |
YMD |
A6 |
990315 |
99/03/15 |
MDYY |
A6YMD |
990315 |
03/15/1999 |
Tenga en cuenta que los atributos de fecha del formato ACTUAL especifican el orden en que se encuentra almacenada la fecha, en el origen de datos no FOCUS. Si el formato ACTUAL no especifica el orden del mes, día y año, se infiere a partir del formato USAGE.
Los campos con formato de fecha se validan automáticamente al introducirse. Pueden introducirse como un literal de fecha natural (por ejemplo, ENE 12 1999) o numérico (por ejemplo, 011299).
Los literales de fechas naturales le permiten especificar la fecha de un modo natural e inteligible, basado en la inclusión de espacios entre los componentes de fecha y el uso de abreviaciones de los nombres del mes. Por ejemplo, Abril 25, 1999 puede especificarse como cualquiera de estps literales de fecha natural:
APR 25 1999 25 APR 1999 1999 APR 25
Los literales de fecha natural pueden usarse en cualquier cálculo de fecha o método de actualización de orígenes de datos. El código siguiente presenta ejemplos:
In WHERE screening WHERE MYDATE IS 'APR 25 1999' In arithmetic expressions MYDATE - '1999 APR 25' In computational date comparisons IF MYDATE GT '25 APR 1999'In comma-delimited data ...,MYDATE = APR 25 1999, ...
El diagrama siguiente describe el formato de los literales de fechas naturales.
Literal | Formato |
---|---|
Año-mes-día | El año de cuatro dígitos, abreviación de tres caracteres en mayúsculas, o nombre completo del mes en mayúsculas, y un día del mes de uno o dos dígitos (por ejemplo, 1999 ABR 25 o ABRIL 25 1999). |
Año-mes | Año y mes, como se ha descrito anteriormente. |
Año-trimestre | El año descrito más arriba, Q más el número del trimestre (por ejemplo, 1999 Q3). |
Mes | El mes, como aparece descrito más arriba. |
Trimestre | El trimestre, como aparece descrito más arriba. |
Día de la semana | Abreviación de tres caracteres, en mayúscula, o el nombre completo del día, también en mayúscula (por ejemplo, MON o MONDAY). |
Los componentes de fecha de un literal de fecha natural pueden estar especificados en cualquier orden, independientemente del orden especificado para el campo de destino, en USAGE. Los componentes de fecha están separados por uno o varios espacios en blanco.
Por ejemplo, si la especificación USAGE de un campo de fecha es YM, el literal de fecha natural escrito en ese campo podrá incluir el año y el mes, en cualquier orden. MAY 1999 y 1990 ABR son literales válidos.
Los literales de fechas numéricas son diferentes de los literales de fechas naturales, ya que se tratan de simples cadenas de dígitos. El orden de los componentes de fecha en un literal de fecha numérica debe coincidir con el orden de los componentes de fecha de la especificación USAGE correspondiente. Además, el literal de fecha numérica debe incluir todos los componentes de fecha pertenecientes a la especificación USAGE. Por ejemplo, si la especificación de USAGE es DMY, Abril 25 1999 debe aparecer como:
250499
Los literales de fecha numérica pueden usarse en cualquier cálculo de fecha o método de actualización de orígenes de datos.
La norma general para manipular campos de fecha en expresiones aritméticas es que los campos de fecha que estén en la misma expresión deben especificar los mismos componentes de fecha. Los componentes de fecha pueden aparecer en cualquier orden; se ignoran las opciones de visualización. Y o YY, Q, M, W y D son componentes válidos.
Tenga en cuenta que las expresiones aritméticas asignadas a los trimestres, meses y días de la semana se calculan como módulo 4, 12 y 17, respectivamente, evitando así la presencia de anomalías como el quinto trimestre o el decimotercer mes.
Por ejemplo, si NEWQUARTER y THISQUARTER incluyen especificaciones USAGE para Q, y el valor de THISQUARTER es 2, la declaración siguiente establece un valor de 1 para NEWQUARTER (es decir, el resto de 5 dividido por 4):
NEWQUARTER = THISQUARTER + 3
Cómo: |
Hay dos tipos de conversión: la conversión de formato y la conversión de componente de fecha. En el primer caso, el valor de un campo de formato de fecha puede asignarse a un campo alfanumérico o de número entero, que emplee opciones de visualización de fechas (consulte la próxima sección). También es posible realizar la conversión inversa.
En el segundo caso, puede asignar un campo, cuyo USAGE especifique un conjunto de componentes de fecha, a otro campo que especifique componentes de fecha distintos.
Por ejemplo, el valor de REPORTDATE (DMY) puede asignarse a ORDERDATE (Y). En este caso, se está extrayendo el año de REPORTDATE. Si REPORTDATE es Abr 27 99, ORDERDATE es 99.
También se puede asignar el valor de ORDERDATE a REPORTDATE. Si el valor de ORDERDATE es 99, el valor de REPORTDATE es Ene 1 99. En este caso, REPORTDATE recibe valores de los componente de fecha no disponibles.
field1/format = field2;
donde:
Es un campo de formato de fecha, o un campo de formato alfanumérico o de número entero, con opciones de visualización de fechas.
Es la especificación USAGE o (FORMAT) de field1 (el campo de destino).
Es un campo de formato de fecha, o un campo de formato alfanumérico o de número entero, con opciones de visualización de fechas. Los tipos de formatos (alfanumérico, de número entero o de fecha) y los componentes de fecha (YY, Y, Q, M, W, D) de field1 y field2 no tienen por qué coincidir.
Los campos de fechas están representados internamente por números enteros binarios de cuatro bytes, que indican el tiempo transcurrido desde la fecha base del formato de fecha. En cada campo, la unidad de tiempo transcurrido es el componente de fecha más pequeño de ese campo.
Por ejemplo, si la especificación USAGE de REPORTDATE es MDY, el tiempo transcurrido se mide en días y, de modo interno, contendrá el número de días transcurridos entre la fecha introducida y la fecha base. Si introduce un literal numérico para Febrero 12, 1964 (es decir, 021364) y, a continuación, imprime el campo en un informe, aparecerá 02/13/64. Si lo emplea en la ecuación:
NEWDATE = 'FEB 28 1964' - REPORTDATE ; DAYS/D = NEWDATE ;
el valor de DAYS es 15. Sin embargo, la representación interna de REPORTDATE es un número entero binario de cuatro dígitos, que representa el número de días entre Diciembre 31, 1900 y Febrero 13, 1964.
Al igual que la unidad de tiempo transcurrido, la fecha base también está basada en el componente de fecha más pequeño de un campo. Por ejemplo, en un campo YQ, el tiempo transcurrido se mide en trimestres y la fecha base es el primer trimestre de 1901. En un campo YM, el tiempo transcurrido se mide en meses y la fecha base es el primer mes de 1901.
Para mostrar espacios en blanco o la fecha base real en un informe, use el comando SET DATEDISPLAY, descrito en Cómo desarrollar aplicaciones de informes el manual . El valor predeterminado, OFF, muestra espacios en blanco cuando una fecha coincide con la fecha base. ON muestra el valor de la fecha base real.
No debe preocuparse por la representación interna del formato de la fecha, solo tenga en cuenta el hecho de que todas las fechas establecidas en la fecha base aparecen en blanco. Además, se aceptan e interpretan como la fecha base todos los campos de fechas introducidos en blanco o como ceros, durante la validación. Aunque aparecen como espacios en blanco, se interpretan como la fecha base en cálculos y expresiones de fechas.
Cómo: |
Por defecto, si el campo de fecha de un origen de datos que no es FOCUS contiene una fecha no válida, se muestra un mensaje y el registro no aparece en el informe. Por ejemplo, si un campo de fecha contiene '980450', su ACTUAL especifica A6 y USAGE, YMD, el registro que contiene el campo no aparece. El comando SET ALLOWCVTERR le permite mostrar el resto del registro que contiene la fecha incorrecta.
SET ALLOWCVTERR = {ON|OFF}
donde:
Le permite mostrar un campo con una fecha incorrecta.
Si hay datos incorrectos, genera un mensaje de diagnóstico y no muestra el registro con los datos erróneos. OFF es el valor predeterminado.
Si aparece una fecha errónea, ALLOWCVTERR establece el valor del campo en MISSING o en la fecha base, dependiendo de si MISSING=ON.
El diagrama siguiente muestra los resultados de la interacción entre DATEDISPLAY y MISSING, presuponiendo la presencia de una fecha errónea y que ALLOWCVTERR=ON.
|
MISSING=OFF |
MISSING=ON |
---|---|---|
DATEDISPLAY=ON |
Muestra la fecha base 19001231 o 1901/1 |
. |
DATEDISPLAY=OFF |
Muestra espacios en blanco |
. |
DATEDISPLAY solo afecta al aspecto de la fecha base. Consulte el manual Cómo desarrollar aplicaciones de informes , para una descripción de DATEDISPLAY.
Los campos de formato de fecha se usan de un modo especial en los recursos siguientes:
-SET &NOW = 'APR 25 1960' ; -SET &LATER = '1990 25 APR' ; -SET &DELAY = &LATER - &NOW ;
En este caso, el valor de &DELAY es la diferencia entre ambas fechas, medidas en días: 10,957.
Además de con el formato de fecha estándar, también puede representar una fecha utilizando un campo alfanumérico, de número entero o de decimal empaquetado, con opciones de visualización de fechas (D, M, Y, y T). Sin embargo, tenga en cuenta que no ofrece la misma capacidad que el formato de fecha estándar.
Los campos alfanuméricos y de número entero utilizados con opciones de visualización de fechas, ofrecen cierta funcionalidad a la hora de utilizarlos con las funciones de fecha especiales, como se explica en el manual Cómo crear informes con el lenguaje WebFOCUS .
Se puede especificar el año, mes y día, a la hora de representar fechas como campos alfanuméricos o de número entero, con opciones de visualización de fechas. Si se encuentran presentes estos tres elementos, la fecha tendrá seis dígitos (u ocho, si el año es de cuatro dígitos) y USAGE podría ser:
Formato |
Visualización |
---|---|
I6MDY |
04/21/98 |
I6YMD |
98/04/21 |
P6DMY |
21/04/98 |
I8DMYY |
21/04/1998 |
El número de un mes (1-12) puede trasladarse al nombre del mes correspondiente añadiendo la letra T al formato, justo después de la M. Por ejemplo:
Formato |
Datos |
Visualización |
---|---|---|
I6MTDY |
05/21/98 |
MAY 21 98 |
I4MTY |
0698 |
JUN 98 |
I2MT |
07 |
JUL |
Si fecha solo cuenta con el elemento de mes, el formato I2MT muestra el valor 4 como ABR, por ejemplo. Esto resulta particularmente útil en los informes con columnas o filas clasificadas por mes. Como consecuencia, aparecerán en el calendario en un orden correcto. Por ejemplo, ENE, FEB, MAR, ya que la clasificación está basada en los valores numéricos, no los alfabéticos. (Tenga en cuenta que, sin la opción de visualización T, I2M se interpreta como un número entero con un símbolo de dólar variable).
Cómo: |
Los datos de tipo fecha-hora admiten la fecha y la hora, de forma parecida a los tipos de datos de marca de tiempo, disponibles en muchos orígenes de datos relacionales.
Los campos de fecha-hora se almacenan en ocho, diez o doce bytes: cuatro bytes para la fecha y cuatro, seis u ocho bytes para la hora, dependiendo de si el formato especifica un microsegundo o un nanosegundo.
Los cálculos sólo permiten asignaciones directas en los tipos de datos: alfa con alfa, numéricos con numéricos, fecha con fecha y fecha y hora con fecha y hora. Todas las demás expresiones se logran mediante un conjunto de funciones de fecha y hora. Consulte el manual Cómo usar funciones , para más información sobre las subrutinas de manipulación de campos fecha-hora.
Los formatos de fecha-hora pueden producir valores de salida y aceptar valores de entrada compatibles con el estándar de notación de fecha-hora ISO 8601:2000. Esta notación está permitida gracias a un parámetro SET y opciones de formato específicas.
SET DTSTANDARD = {OFF|ON|STANDARD|STANDARDU}
donde:
No provee compatibilidad con la notación estándar ISO de fecha y hora OFF es el valor predeterminado.
Permite el reconocimiento y resultado de formatos del estándar ISO, incluyendo el uso de T como delimitador entre fecha y hora, el uso del punto o coma como delimitador de fracciones de segundos, el uso de la Z al final de horas "universales", y el aceptar las entradas con información de huso horario. STANDARD es un sinónimo para ON.
Permite formatos de estándar ISO (como STANDARD) y además, cuando es posible, convierte cadenas de entrada al equivalente de hora universal (antes conocido como Greenwich Mean Time), permitiendo de esta manera que las aplicaciones almacenen consistentemente todos los valores de fecha y hora.
La siguiente solicitud muestra la entrada de valores de fecha-hora, en los formatos estándar de fecha-hora ISO 8601:2000. Cuando SET DTSTANDARD=OFF, la solicitud termina por (FOC177): INVALID DATE CONSTANT:
SET DTSTANDARD = &STAND DEFINE FILE EMPLOYEE -* The following input is format YYYY-MM-DDThh:mm:ss.sTZD DT1/HYYMDs = DT(2004-06-01T19:20:30.45+01:00); -* The following input has comma as the decimal separator DT2/HYYMDs = DT(2004-06-01T19:20:30,45+01:00); DT3/HYYMDs = DT(20040601T19:20:30,45); DT4/HYYMDUs = DT(2004-06-01T19:20:30,45+01:00); END TABLE FILE EMPLOYEE HEADING CENTER "DTSANDARD = &STAND " " " SUM CURR_SAL NOPRINT DT1 AS 'DT1: INPUT = 2004-06-01T19:20:30.45+01:00' OVER DT2 AS 'DT2: INPUT = 2004-06-01T19:20:30,45+01:00' OVER DT3 AS 'DT3: INPUT = 20040601T19:20:30,45' OVER DT4 AS 'DT4: OUTPUT FORMAT HYYMDUs' END
Cuando DTSTANDARD= STANDARD, la salida indica que los valores de entrada han sido aceptados, pero que los ajustes de zona horaria DT1, DT2 y DT4 (+01:00), han quedado ignoradas en la salida. El carácter U del formato DT4 hace que se utilice un separador T entre la fecha y la hora:
DTSANDARD = STANDARD DT1: INPUT = 2004-06-01T19:20:30.45+01:00 2004-06-01 19:20:30.450 DT2: INPUT = 2004-06-01T19:20:30,45+01:00 2004-06-01 19:20:30.450 DT3: INPUT = 20040601T19:20:30,45 2004-06-01 19:20:30.450 DT4: OUTPUT FORMAT HYYMDUs 2004-06-01T19:20:30.450
Cuando DTSTANDARD= STANDARDU, la salida indica que los valores DT1, DT2 y DT4 han sido convertidos a la hora universal, mediante las sustracción de los ajustes de zona horaria (+01:00):
DTSANDARD = STANDARDU DT1: INPUT = 2004-06-01T19:20:30.45+01:00 2004-06-01 18:20:30.450 DT2: INPUT = 2004-06-01T19:20:30,45+01:00 2004-06-01 18:20:30.450 DT3: INPUT = 20040601T19:20:30,45 2004-06-01 19:20:30.450 DT4: OUTPUT FORMAT HYYMDUs 2004-06-01T18:20:30.450
Cómo:
Referencia: |
En un archivo máster, el atributo USAGE (o FORMAT) determina cómo aparecen los valores de campos fecha-hora en la salida y formularios de informe, y su comportamiento en expresiones y funciones. En orígenes de datos FOCUS, también determina el modo en que se almacenan.
El formato de tipo H describe los campos de fecha-hora. El atributo USAGE de un campo fecha-hora, contiene el código de formato H e identifica la longitud del campo o las opciones relevantes de visualización de fecha-hora.
El atributo MISSING de los campos de fecha-hora puede estar activado o desactivado. Si está desactivado y el campo de fecha-hora no presenta un valor, se reestablece en un espacio en blanco, el valor predefinido.
Este formato es el indicado para los archivos HOLD alfanuméricos o los archivos de transacciones.
USAGE = Hn
donde:
Es la longitud del campo, entre 1 y 23, incluidos ocho caracteres para mostrar la fecha y nueve, 12 o 15, para la hora. En longitudes inferiores a 20, la fecha se trunca por el lado derecho.
Las fechas de ocho caracteres incluyen cuatro dígitos para el año, dos para el mes y dos para el día del mes, YYYYMMDD.
Las horas de nueve caracteres incluyen dos dígitos para la hora, dos para el minuto, dos para el segundo, y tres para los milisegundos, HHMMSSsss. El componente de milisegundo representa la parte decimal del segundo hasta la tercera posición.
Las horas de doce caracteres incluyen dos dígitos para la hora, dos para el minuto, dos para el segundo, tres para los milisegundos y tres para los microsegundos, HHMMSSsssmmm. El componente de milisegundo representa la parte decimal del valor de segundo hasta la tercera posición. El componente de microsegundo representa tres posiciones decimales adicionales, posteriores al valor de milisegundo.
La hora de quince caracteres incluye dos dígitos para la hora, dos para el minuto, dos para el segundo, tres para el milisegundo, tres para el microsegundo, y tres para el nanosegundo, HHMMSSsssmmmnnn. El componente de milisegundo representa la parte decimal del valor de segundo hasta la tercera posición. El componente de microsegundo representa tres posiciones decimales adicionales, posteriores al valor de microsegundo. El componente de nanosegundo representa tres posiciones decimales adicionales, posteriores al valor de microsegundo.
Este formato destaca por la ausencia de espacios entre los componente de fecha y hora, de caracteres decimales, y espacios o separadores, dentro de cada componente. La hora debe introducirse de acorde al sistema de 24 horas. Por ejemplo, el valor 19991231225725333444 equivale a 1999/12/31 10:57:25.333444PM.
USAGE = Htimefmt1
donde:
Es el formato USAGE utilizado para mostrar únicamente la hora. Los componentes de hora, minuto y segundo siempre están separados por dos puntos (:), sin espacios de por medio. Un valor de hora puede tener un espacio en blanco justo después de un indicador am/pm. Para más información, consulte Opciones de visualización de valores solo de hora.
La tabla siguiente lista las opciones válidas de visualización de hora, para un atributo USAGE solo de hora. Suponga que la hora es 2:05:27.123456444 a.m.
Opción |
Significado |
Efecto |
---|---|---|
H |
Hora (dos dígitos). Si el formato incluye la opción a, b, A o B, el valor de la hora será entre 01 y 12. De lo contrario, el valor de la hora será entre 01 y 23, donde 00 equivale a medianoche. |
Imprime una hora de dos dígitos Por ejemplo: USAGE = HH imprime 02 |
h |
Hora con supresión de ceros. Si el formato incluye la opción a, b, A o B, el valor de la hora será entre 1 y 12. De lo contrario, el valor de la hora será entre 0 y 23. |
Muestra la hora con supresión de ceros. Por ejemplo: USAGE = Hh imprime 2 |
I |
Minuto (dos dígitos). El valor de minuto es entre 00 y 59. |
Imprime el minuto de dos dígitos. Por ejemplo: USAGE = HHI imprime 02:05 |
i |
Minuto con supresión de ceros. El valor de minuto es entre 0 y 59. |
Imprime el minuto con supresión de ceros. No se puede usar de forma conjunta con un formato de hora (H o h). Por ejemplo: USAGE = Hi imprime 5 |
S[x] |
Segundo (dos dígitos). Puede especificar hasta nueve posiciones decimales después del valor de segundos, mediante la opción x, donde x es un número entre 1 y 9. Alternativamente, puede usar los formatos s, m y n, para mostrar tres, seis o nueve posiciones decimales. S: 00 a 59 |
Imprime el segundo de dos dígitos. Por ejemplo: USAGE = HHIS imprime 02:05:27 USAGE = HHIS1 imprime 02:05:27.1 |
s |
Milisegundo (tres dígitos, después del carácter decimal de segundo). 000 to 999 |
Imprime el segundo con tres posiciones decimales. Por ejemplo: USAGE = HHISs imprime 02:05:27.123 |
m |
Microsegundo (tres dígitos adicionales después del milisegundo). del 000 al 999 |
Imprime el segundo con seis posiciones decimales. Por ejemplo: USAGE = HSsm imprime 27.123456 |
n |
Nanosegundo (tres dígitos adicionales después del microsegundo). del 000 al 999 |
Imprime el segundo con nueve posiciones decimales. Por ejemplo: USAGE = HSsn imprime 27.123456444 |
A |
Visualización de hora de 12 horas, con AM o PM en mayúsculas. |
Imprime la hora entre 01 y 12, seguida de AM o PM. Por ejemplo: USAGE = HHISA imprime 02:05:27AM |
a |
Visualización de hora de 12 horas, con am o pm en minúsculas. |
Imprime la hora entre 01 y 12, seguida de am o pm. Por ejemplo: USAGE = HHISa imprime 02:05:27am |
B |
Visualización de hora de 12 horas, con AM o PM en mayúsculas, y un espacio detrás de AM o PM. |
Imprime la hora entre 01 y 12, seguida de un espacio y, después, AM o PM. Por ejemplo: USAGE = HHISB imprime 02:05:27 AM |
b |
Visualización de hora de 12 horas, con am o pm en minúsculas, y un espacio detrás de am o pm. |
Imprime la hora entre 01 y 12, seguida de un espacio y, después, am o pm. Por ejemplo: USAGE = HHISb imprime02:05:27 am |
Z |
Visualización de hora de 24 horas, con Z indicando la hora universal. Z es incompatible con el resultado AM/PM. |
Imprime la hora entre 01 y 24, seguida de Z. Por ejemplo: USAGE = HHISZ imprime 14:30[:20.99]Z |
Cuando el formato incluye más de una opción de visualización de hora:
Nota: A menos que especifique una de las opciones de visualización de hora AM/PM, el componente de hora aparece en el formato 24 horas.
USAGE = Hdatefmt [separator] [timefmt2]
donde:
Es el formato USAGE empleado para mostrar la porción de fecha del campo de fecha-hora. Para más información, consulte Opciones de visualización del componente de fecha de un campo fecha-hora.
Es un separador de los componentes de fecha. El separador predeterminado es la barra diagonal (/). El punto (.), el guión (-), el espacio (B) o ninguno (N) también son separadores válidos. En el caso de los meses trasladados, solo puede especificar estos separadores cuando no se esté usando la opción k.
Con las propiedades STANDARD y STANDARDU, el separador para fechas siempre es un guión. Por defecto, el separador entre fecha y hora está en blanco. Sin embargo, si especifica el carácter U como opción de separador, la fecha y la hora estarán separadas por el carácter T.
Es el formato de una hora posterior a una fecha. La hora está separada de la fecha por un espacio en blanco. Los componentes de hora están separados mediante puntos y comas. A diferencia del formato exclusivo de hora, el formato de una hora posterior a una fecha cuenta con un máximo de dos caracteres: un carácter individual, que representa todos los componentes de hora mostrados, y un carácter para la opción AM/PM. Para más información, consulte Opciones de visualización del componente de hora de un campo fecha-hora.
El formato de fecha puede incluir las siguientes opciones de visualización, siempre que cumplan las combinaciones permitidas. En la tabla siguiente, suponga que la fecha Febrero 5, 1999.
Opción |
Significado |
Ejemplo |
---|---|---|
Y |
Año de dos dígitos |
99 |
YY |
Año de cuatro dígitos |
1999 |
M |
Mes de dos dígitos (01 - 12) |
02 |
MT |
Nombre completo del mes |
February |
Mt |
Nombre corto del mes |
Feb |
D |
Día de dos dígitos |
05 |
d |
Día con supresión de ceros |
5 |
k |
En los formatos en que el mes o día están seguidos del año y el mes ha quedado trasladado a un nombre corto o completo, la k separa el año del día, con una coma y un espacio en blanco. De lo contrario, el separador es un espacio en blanco. |
USAGE = HMtDkYY prints Feb 05, 1999 |
Nota: A menos que especifique una de las opciones de visualización de hora AM/PM, el componente de hora aparece en el formato 24 horas.
La tabla siguiente lista las opciones válidas. Suponga que la fecha es Febrero 5, 1999 y la hora, 02:05:25.444555333 a.m.
Opción |
Significado |
Ejemplo |
---|---|---|
H |
Imprime la hora |
USAGE = HYYMDH imprime 1999/02/05 02 |
I |
Imprime hora:minuto. |
USAGE = HYYMDI imprime 1999/02/05 02:05 |
S[x] |
Imprime hora:minuto:segundo. Si especifica la opción x, donde x es un número entre 1 y 9, los segundos aparecen con x dígitos decimales. Alternativamente, puede espeficar las opciones s, m o n, para mostrar los segundos con tres, seis o nueve posiciones decimales. |
USAGE = HYYMDS imprime 1999/02/05 02:05:25 USAGE = HYYMDS1 imprime 1999/02/05 02:05:25.4 |
s |
Imprime hora:minuto:segundo.milisegundo. |
USAGE = HYYMDs imprime 1999/02/05 02:05:25.444 |
m |
Imprime hora:minuto:segundo.microsegundo. |
USAGE = HYYMDm imprime 1999/02/05 02:05:25.444555 |
n |
Imprime hora:minuto:segundo.nanosegundo. |
USAGE = HYYMDn imprime 1999/02/05 02:05:25.444555333 |
A |
Imprime AM o PM. Emplea el formato de 12 horas y hace que la hora aparezca con supresión de ceros. |
USAGE = HYYMDSA imprime 1999/02/05 2:05:25AM |
a |
Imprime am o pm. Emplea el formato de 12 horas y hace que la hora aparezca con supresión de ceros. |
USAGE = HYYMDSa imprime 1999/02/05 2:05:25am |
B |
Imprime AM o PM, precedido de un espacio en blanco. Emplea el formato de 12 horas y hace que la hora aparezca con supresión de ceros. |
USAGE = HYYMDSB imprime 1999/02/05 2:05:25 AM |
b |
Imprime am o pm, precedido de un espacio en blanco. Emplea el formato de 12 horas y hace que la hora aparezca con supresión de ceros. |
USAGE = HYYMDSb imprime 1999/02/05 2:05:25 am |
Z |
Imprime Z, para indicar la hora universal. Emplea el formato de 24 horas. Z es incompatible con el resultado AM/PM. |
USAGE = HHISZ imprime 14:30[:20.99]Z |
Los componentes de fecha pueden aparecer con cualquiera de estos órdenes y combinaciones:
Cómo: Referencia: |
El formato de caracteres AnV se admite en archivos máster, para los orígenes de datos FOCUS, XFOCUS y relacionales. Este formato se usa para representar los datos de tipo VARCHAR (carácter de longitud variable), admitidos por los sistemas de administración de bases de datos relacionales.
En orígenes de datos relacionales, AnV realiza un seguimiento de la longitud real de una columna VARCHAR. Esta información resulta importante cuando el valor se utiliza para rellenar una columna VARCHAR en una RDBMS diferente. Determina si los espacios en blanco finales se retienen en la concatenación y comparación (en Oracle) de cadenas (el resto de motores relacionales ignora los espacios en blanco finales en comparaciones de cadenas).
En un orígenes de datos FOCUS o XFOCUS, AnV no admite caracteres de longitud verdaderamente variable. Es un campo de de caracteres, con una longitud fija y dos bytes iniciales adicionales, que contienen la longitud real de los datos almacenados en el campo. Esta longitud se almacena como un valor corto de número entero, que ocupa dos bytes. Los espacios en blanco finales, introducidos como parte de un campo AnV, están incluidos en su longitud.
Nota: Debido a los dos bytes de sobrecarga y el procesamiento adicional requerido para eliminarlos, no es recomendable usar el formato AnV en orígenes de datos no relacionales.
FIELD=name, ALIAS=alias, USAGE=AnV [,ACTUAL=AnV] , $
donde:
Es el tamaño (longitud máxima) del campo. Puede ser de 1 a 4093. Tenga en cuenta que, debido a los bytes adicionales utilizados para almacenar la longitud, el campo A4093V tiene una longitud real de 4095 bytes. El tamaño cero (A0V) no se admite. La longitud de una instancia del campo puede ser cero.
Nota: HOLD FORMAT ALPHA crea un formato ACTUAL de AnW en el archivo máster. Consulte Cómo propagar un campo AnV a un archivo HOLD.
Esto representa un campo VARCHAR en un archivo máster, para un origen de datos DB2 con un tamaño de 200:
$ VARCHAR FIELD USING AnV FIELD=VARCHAR200, ALIAS=VC200, USAGE=A200V, ACTUAL=A200V, MISSING=ON ,$
Esto representa un campo AnV en un archivo máster, para un origen de datos FOCUS con un tamaño de 200:
FIELD=ALPHAV, ALIAS=AV200, USAGE=A200V, MISSING=ON ,$
Si un origen de datos incluye un campo AnV, especifique lo mostrado a continuación, para crear un archivo HOLD FORMAT ALPHA sin el designador de longitud:
FIELD=ALPHA, USAGE=A25, ACTUAL=A25V, $
o
DEFINE ... ALPHA/A25 = VARCHAR ; END
o
COMPUTE ALPHA/A25 = VARCHAR ;
Para poder alterar o crear un archivo máster que incluya AnV, debe convertir los datos y añadir la longitud al principio del campo. Por ejemplo, emita un comando HOLD cuando el campo aparezca descrito del modo siguiente:
FIELD=VARCHAR, ,USAGE=A25V, ACTUAL=A25, $
o
DEFINE ... VARCHAR/A25V = ALPHA ; END
o
COMPUTE VARCHAR/A25V = ALPHA ;
Cuando un usuario propaga un campo AnV a un origen de datos secuencial, mediante el comando HOLD FORMAT ALPHA, la longitid del número entero de dos bytes se convierte en una longitud alfanumérica de seis dígitos. El campo del archivo HOLD está compuesto por este número de seis dígitos, seguido de los datos de los caracteres. Los atributos del formato de este campo son:
... USAGE=AnV, ACTUAL=AnW
AnW se crea como un subproducto de HOLD FORMAT ALPHA. Sin embargo, puede leerse y usarse en entradas, según sea necesario. El número de bytes ocupado por este campo en el archivo HOLD, es de 6+n.
El campo A39V llamado TITLEV, se propaga al archivo HOLD como:
FIELDNAME = TITLEV ,E03 ,A39V ,A39W ,$
En un archivo HOLD binario, los formatos USAGE y ACTUAL son AnV, aunque el formato ACTUAL puede rellenarse hasta que constituya una palabra completa de 4 bytes. El número de bytes ocupado por este campo en el archivo HOLD, es de 2+n.
Al introducir un campo AnV en un origen de datos, se ignoran todos los bytes del campo de entrada, posteriores a longitud especificada. Los bytes se establecen en espacios en blanco como parte del proceso de entrada.
Cuando un usuario crea un origen de datos relacional usando el comando HOLD FORMAT sqlengine, el campo AnV genera una columna VARCHAR en el origen de datos relacional.
El campo A39V llamado TITLEV, se propaga a un archivo HOLD FORMAT DB2 como:
FIELDNAME = 'TITLEV', 'TITLEV', A39V, A39V ,$
Cómo: |
Puede almacenar cualquier combinación de caracteres como un archivo de texto.
FIELD = fieldname, ALIAS = aliasname, USAGE = TXn[F],$
donde:
Es el nombre que le asigna al campo de texto.
Es el nombre alternativo del campo.
Es la longitud de visualización de salida de un campo de texto, en TABLE. La longitud de visualización puede tener de 1 a 256 caracteres.
Este formato permite almacenar todas las letras, dígitos y caracteres especiales. A continuación le mostramos algunos ejemplos de formatos de campos de texto.
Formato | Visualización |
---|---|
TX50 | This course provides the DP professional with the skills needed to create, maintain, and report from FOCUS data sources. |
TX35 | This course provides the DP professional with the skills needed to create, maintain, and report from FOCUS data sources. |
Las opciones de edición estándar no están disponibles para el formato de campo de texto.
WebFOCUS |