Cómo: Referencia: |
La vista de negocio quedan almacenadas como si fuera un archivo máster, real. Sin embargo, no tiene atributo SUFFIX. En cambio, contiene un atributo VIEW_OF que apunta a su archivo máster subyacente. Cuando la vista de negocio se emplea en una solicitud, toda la información de los campos y de seguridad proviene del archivo máster original. Si el campo pertenece a un segmento de referencia cruzada, en el archivo máster original, toda la información clave y de segmento de referencia cruzada permanece en el archivo máster original.
La vista de negocio puede asignarse a una aplicación diferente desde el archivo máster original, lo que aporta seguridad e integridad a las aplicaciones, en forma de restricciones APP PATH sobre distintas vistas de negocio.
Las vistas de negocio están organizadas en "pseudo-segmentos", denominados carpetas. Cada carpeta puede contener un grupo de campos u otras carpetas. La carpeta también puede estar vacía. Los campos de una carpeta pueden provenir de distintos segmentos del archivo máster original. Si los campos no están situados a lo largo de una ruta única, en el archivo máster original, y su solicitud incluye campos de rutas diferentes, en el archivo máster original, puede que se generen mensajes de advertencia al ejecutar la solicitud.
Una vista de negocio puede incluir campos reales, valores calculados (COMPUTE), campos virtuales (DEFINE) y filtros del archivo máster original.
Las vistas de negocio resultan especialmente útiles para la visualización de orígenes de datos relacionales y de FOCUS. No se recomienda usarlas frente a orígenes de datos de cubo, ya que eliminan la capacidad de drill down.
En la vista de negocio, puede utilizar los nombres de los campos y segmentos del archivo máster original o asignar nuevos nombres de campo. Al ejecutar una solicitud frente a una vista de negocio, en la que no coincide ningún nombre con los del archivo máster original, la solicitud atraviesa un proceso de transformación para sustituir el nombre real. Para activar este proceso de traslación de nombres, el comando SET FOCTRANSFORM=ON debe estar en vigor antes de emitir un comando TABLE, DEFINE o JOIN, cuando el nombre de algún campo de la vista de negocio no coincida con el del campo real.
SET FOCTRANSFORM={ON|OFF}
donde:
Convierte todas las referencias de campo y segmento a las entidades correspondientes del archivo máster real. ON es el valor predeterminado.
No convierte referencias de campo y segmento.
FILE = bv_name, VIEW_OF=real_mf [, REMARKS|DESC="default_desc" [, DESC_ln="desc_for_ln" ...]] $ SEGMENT = folder_name , [PARENT=parent_folder_name [, DESC = "default_desc", [DESC_ln="desc_for_ln" ...]]] $ [FIELD = bv_field_name, [ALIAS=real_field_name] , [BELONGS_TO_SEGMENT= real_segment_name] , [, TITLE = "default_title" [, TITLE_ln="title_for_ln" ...]]] [, DESC="default_desc" [, DESC_ln="desc_for_ln" ...], $]] [FIELD ... ] [SEGMENT ... ]
donde:
Es el nombre que le asigna a la vista.
Es el nombre del archivo máster original.
Es el nombre de un segmento virtual de la vista. Las carpetas vacías están permitidas.
Es el nombre del principal de un segmento virtual.
Es el nombre de campo que ud. asigna. El nombre de campo puede ser igual o distinto al del campo real. Si es diferente, el campo real queda identificado por el atributo ALIAS.
Es el nombre del campo del archivo máster original. Este campo puede ser un campo real, virtual o un valor calculado. Si bv_field_name coincide con real_field_name, se puede omitir el atributo ALIAS. Si no se ha especificado ningún ALIAS, el nombre de campo de la vista de negocio debe coincidir con el nombre de campo del archivo máster original.
Es el nombre del segmento en el que reside el campo, dentro del archivo máster original. Si el nombre de campo real es único, en el archivo máster original, puede omitirse el atributo BELONGS_TO_SEGMENT. Si BELONGS_TO_SEGMENT no está disponible y el nombre de campo no es único, en el archivo máster original, se utiliza el primer campo que coincida con un nombre de campo del archivo máster original.
Es el título de columna utilizado cuando el parámetro LANG está configurado en el idioma predeterminado del servidor, o se ha configurado otro idioma, pero el archivo máster no contiene el atributo correspondiente TITLE_ln de ese campo. También se usa este título cuando el valor ln no es válido.
Es el texto descriptivo utilizado cuando el parámetro LANG está configurado en el idioma predeterminado del servidor, o se ha configurado otro idioma, pero el archivo máster no contiene el atributo correspondiente DESC_ln de ese campo. También se usa esta descripción cuando el valor ln no es válido. Esta descripción muestra la interfaz frontal de usuario.
Especifica el idioma para el que se aplica el título o descripción. Los valores válidos de ln son las abreviaciones de código de idioma de dos letras ISO 639.
Es el título utilizado cuando el parámetro LANG está configurado en un idioma no predeterminado de servidor y el archivo máster contiene un atributo TITLE_ln correspondiente, donde ln es el código de dos dígitos del idioma especificado por el parámetro LANG.
Es la descripción utilizada cuando el parámetro LANG está configurado en un idioma no predeterminado de servidor y el archivo máster contiene un atributo DESC_ln correspondiente, donde ln es el código de dos dígitos del idioma especificado por el parámetro LANG.
Nombre del idioma |
Código de idioma de dos letras |
Abreviación de idioma de tres letras |
---|---|---|
Arabic |
ar |
ARB |
Báltico | lt |
BAL |
Chino - Simplificado GB |
zh |
PRC |
Chino - Tradicional Big-5 |
tw |
ROC |
Checo |
cs |
CZE |
Danés |
da |
DAN |
Dutch |
nl |
DUT |
Inglés - Americano |
en |
AME o ENG |
Inglés - UK |
uk |
UKE |
Finnish |
fi |
FIN |
Francés - Canadiense |
fc |
FRE |
Francés - Estándar |
fr |
FRE |
Alemán - Austríaco |
en |
GER |
Alemán - Estándar |
de |
GER |
Greek |
el |
GRE |
Hebrew |
iw |
HEW |
Italian |
it |
ITA |
Japonés - Shift-JIS(cp942) en ascii cp939 en EBCDIC |
ja |
JPN |
Japonés - EUC(cp10942) en ascii (UNIX) |
je |
JPE |
Coreano |
ko |
KOR |
Noruego |
no |
NOR |
Polish |
pl |
POL |
Portugués - brasileño |
br |
POR |
Portugués - Portugal |
pt |
POR |
Ruso |
ru |
RUS |
Español |
es |
SPA |
Sueco |
sv |
SWE |
Tailandés |
th |
THA |
Turco |
tr |
TUR |
La siguiente vista de negocio del origen de datos EMPLOYEE está compuesta de tres carpetas:
Tenga en cuenta que ya existe un campo llamado JOBCODE en las carpetas 2 y 3. El atributo BELONGS_TO_SEGMENT distingue entre el campo JOBCODE del segmento PAYINFO y el campo JOBCODE del segmento JOBSEG, en el archivo máster EMPLOYEE.
La tabla siguiente muestra el archivo máster de la vista de negocio y los segmentos asociados del archivo máster EMPLOYEE:
Vista de negocio |
Archivo máster de EMPLOYEE |
---|---|
FILENAME=EMPLOYEE_BV01, VIEW_OF=baseapp/employeeEMPLOYEE, $ |
FILENAME=EMPLOYEE, SUFFIX=FOC |
SEGMENT=FOLDER1, $ FIELDNAME=EMP_ID, ALIAS=EMP_ID, BELONGS_TO_SEGMENT=EMPINFO, $ FIELDNAME=LAST_NAME, ALIAS=LAST_NAME, BELONGS_TO_SEGMENT=EMPINFO, $ FIELDNAME=FIRST_NAME, ALIAS=FIRST_NAME, BELONGS_TO_SEGMENT=EMPINFO, $ FIELDNAME=DEPARTMENT, ALIAS=DEPARTMENT, BELONGS_TO_SEGMENT=EMPINFO, $ FIELDNAME=CURR_SAL, ALIAS=CURR_SAL, BELONGS_TO_SEGMENT=EMPINFO, $ FIELDNAME=CURR_JOBCODE, ALIAS=CURR_JOBCODE, BELONGS_TO_SEGMENT=EMPINFO, $ |
SEGNAME=EMPINFO, SEGTYPE=S1 FIELDNAME=EMP_ID, ALIAS=EID, FORMAT=A9, $ FIELDNAME=LAST_NAME,ALIAS=LN, FORMAT=A15,$ FIELDNAME=FIRST_NAME,ALIAS=FN, FORMAT=A10,$ FIELDNAME=HIRE_DATE,ALIAS=HDT, FORMAT=I6YMD,$ FIELDNAME=DEPARTMENT, ALIAS=DPT,FORMAT=A10,$ FIELDNAME=CURR_SAL,ALIAS=CSAL, FORMAT=D12.2M,$ FIELDNAME=CURR_JOBCODE, ALIAS=CJC,FORMAT=A3,$ FIELDNAME=ED_HRS, ALIAS=OJT, FORMAT=F6.2,$ |
El segmento no está incluido en la vista de negocio. |
SEGNAME=FUNDTRAN, SEGTYPE=U, PARENT=EMPINFO FIELDNAME=BANK_NAME, ALIAS=BN, FORMAT=A20,$ FIELDNAME=BANK_CODE, ALIAS=BC, FORMAT=I6S, $ FIELDNAME=BANK_ACCT, ALIAS=BA, FORMAT=I9S,$ FIELDNAME=EFFECT_DATE, ALIAS=EDATE,FORMAT=I6YMD,$ |
SEGMENT=FOLDER3, PARENT=FOLDER1, $ FIELDNAME=DAT_INC, ALIAS=DAT_INC, BELONGS_TO_SEGMENT=PAYINFO, $ FIELDNAME=PCT_INC, ALIAS=PCT_INC, BELONGS_TO_SEGMENT=PAYINFO, $ FIELDNAME=SALARY, ALIAS=SALARY, BELONGS_TO_SEGMENT=PAYINFO, $ FIELDNAME=JOBCODE, ALIAS=JOBCODE, BELONGS_TO_SEGMENT=PAYINFO, $ |
SEGNAME=PAYINFO,SEGTYPE=SH1, PARENT=EMPINFO FIELDNAME=DAT_INC, ALIAS=DI, FORMAT=I6YMD, $ FIELDNAME=PCT_INC, ALIAS=PI, FORMAT=F6.2,$ FIELDNAME=SALARY, ALIAS=SAL, FORMAT=D12.2M,$ FIELDNAME=JOBCODE, ALIAS=JBC, FORMAT=A3,$ |
El segmento no está incluido en la vista de negocio. |
SEGNAME=ADDRESS,SEGTYPE=S1, PARENT=EMPINFO FIELDNAME=TYPE, ALIAS=AT, FORMAT=A4,$ FIELDNAME=ADDRESS_LN1, ALIAS=LN1, FORMAT=A20,$ FIELDNAME=ADDRESS_LN2, ALIAS=LN2, FORMAT=A20,$ FIELDNAME=ADDRESS_LN3, ALIAS=LN3, FORMAT=A20,$ FIELDNAME=ACCTNUMBER, ALIAS=ANO, FORMAT=I9L,$ |
El segmento no está incluido en la vista de negocio. |
SEGNAME=SALINFO, SEGTYPE=SH1, PARENT=EMPINFO FIELDNAME=PAY_DATE, ALIAS=PD, FORMAT=I6YMD,$ FIELDNAME=GROSS, ALIAS=MO_PAY, FORMAT=D12.2M,$ |
El segmento no está incluido en la vista de negocio. |
SEGNAME=DEDUCT, SEGTYPE=S1, PARENT=SALINFO FIELDNAME=DED_CODE, ALIAS=DC, FORMAT=A4,$ FIELDNAME=DED_AMT, ALIAS=DA, FORMAT=D12.2M,$ |
SEGMENT=FOLDER2, PARENT=FOLDER1, $ FIELDNAME=JOBCODE, ALIAS=JOBCODE, BELONGS_TO_SEGMENT=JOBSEG, $ FIELDNAME=JOB_DESC, ALIAS=JOB_DESC, BELONGS_TO_SEGMENT=JOBSEG, $ |
SEGNAME=JOBSEG, SEGTYPE=KU, PARENT=PAYINFO, CRFILE=JOBFILE, CRKEY=JOBCODE,$ |
El segmento no está incluido en la vista de negocio. |
SEGNAME=SECSEG, SEGTYPE=KLU,PARENT=JOBSEG, CRFILE=JOBFILE,$ |
El segmento no está incluido en la vista de negocio. |
SEGNAME=SKILLSEG,SEGTYPE=KL, PARENT=JOBSEG, CRFILE=JOBFILE,$ |
El segmento no está incluido en la vista de negocio. |
SEGNAME=ATTNDSEG,SEGTYPE=KM, PARENT=EMPINFO, CRFILE=EDUCFILE, CRKEY=EMP_ID,$ |
El segmento no está incluido en la vista de negocio. |
SEGNAME=COURSEG, SEGTYPE=KLU, PARENT=ATTNDSEG, CRFILE=EDUCFILE,$ |
El siguiente procedimiento hace referencia a la vista de negocio. Tenga en cuenta que la propiedad SET FOCTRANSFORM=ON está en vigor por defecto y es necesaria para la traslación del nombre cualificado FOLDER3.JOBCODE a su nombre correspondiente, en el archivo máster original (PAYINFO.JOBCODE):
TABLE FILE EMPLOYEE_BV01 PRINT FOLDER3.JOBCODE JOB_DESC BY LAST_NAME BY FIRST_NAME BY HIGHEST 1 DAT_INC NOPRINT END
La salida es:
LAST_NAME FIRST_NAME JOBCODE JOB_DESC --------- ---------- ------- -------- BANNING JOHN A17 DEPARTMENT MANAGER BLACKWOOD ROSEMARIE B04 SYSTEMS ANALYST CROSS BARBARA A17 DEPARTMENT MANAGER GREENSPAN MARY A07 SECRETARY IRVING JOAN A15 ASSIST.MANAGER JONES DIANE B03 PROGRAMMER ANALYST MCCOY JOHN B02 PROGRAMMER MCKNIGHT ROGER B02 PROGRAMMER ROMANS ANTHONY B04 SYSTEMS ANALYST SMITH MARY B14 FILE QUALITY RICHARD A01 PRODUCTION CLERK STEVENS ALFRED A07 SECRETARY
A continuación, añada un filtro al archivo máster EMPLOYEE e inclúyalo en el FOLDER1 de la vista de negocio.
En el archivo máster EMPLOYEE:
FILTER DFILTER WITH EMPINFO.EMP_ID=DEPARTMENT EQ 'MIS'; $
En la vista de negocio:
FIELDNAME=DFILTER, ALIAS=DFILTER, BELONGS_TO_SEGMENT=EMPINFO, $
La siguiente solicitud implementa el filtro:
TABLE FILE EMPLOYEE_BV01 PRINT PAYINFO.JOBCODE JOB_DESC BY LAST_NAME BY FIRST_NAME BY HIGHEST 1 DAT_INC NOPRINT WHERE DFILTER END
La salida es:
LAST_NAME FIRST_NAME JOBCODE JOB_DESC --------- ---------- ------- -------- BLACKWOOD ROSEMARIE B04 SYSTEMS ANALYST CROSS BARBARA A17 DEPARTMENT MANAGER GREENSPAN MARY A07 SECRETARY JONES DIANE B03 PROGRAMMER ANALYST MCCOY JOHN B02 PROGRAMMER SMITH MARY B14 FILE QUALITY
WebFOCUS |