Publicación y carga de Servigistics InService > Información adicional > Personalización de TAL > Personalización de las opciones de acceso
  
Personalización de las opciones de acceso
Para aplicar control de acceso en los atributos adicionales y tener mayor control sobre el filtrado del contenido, se deben realizar las tres personalizaciones siguientes:
Adición de opciones y elecciones mediante el fichero OptionsDefinition.
Aplicación de la aplicabilidad de las opciones de acceso en los datos que se van a filtrar mediante un fichero FilterDefinition-Mapping.
Carga de una opción de acceso que sea válida para el filtrado.
Cada uno de estos pasos se tratan en una sección independiente.
Adiciones al fichero OptionsDefinition
Se trata de un fichero del paquete en el que se muestran todas las opciones y sus elecciones correspondientes que están disponibles y se soportan en el sistema. Es posible añadir o quitar algunas opciones existentes (y las elecciones relacionadas.) En general, en un elemento Option se pueden incluir uno o más elementos Choice.
A continuación se proporciona una entrada de este fichero:

<OptionSet container="OR:wt.pdmlink.PDMLinkProduct:115636" label="OptionSet" token="_oset4562692">
<Option label="Release" token="_opt4318852">
<Name>Release</Name>
<Choice label="postRelease" token="_ch4318861">
<Name>postRelease</Name>
</Choice>
<Choice label="preRelease" token="_ch4318862">
<Name>preRelease</Name>is
</Choice>
</Option>
</OptionSet>
* 
El nombre Option y el nombre Choice se pueden localizar mediante el fichero translation.xml.
El uso y propósito de los elementos y sus atributos se tratan en esta tabla:
Nombre de la propiedad
Tipo
Finalidad
OptionSet
Elemento
Marcador con varios elementos Option.
Option
Elemento
Marcador con varios elementos Choice.
Choice
Elemento
Marcador de las elecciones permitidas de una opción determinada.
token
atributo
Se utiliza para operaciones de búsqueda en el fichero translation.xml para la traducción de idioma.
label
atributo
Nombre de la opción que se añade.
Name
elemento
Nombre del objeto Option o Choice que se añade.
Aplicación de aplicabilidad mediante el fichero FilterDefinition-Mapping
Las opciones y sus elecciones que se describen en la sección anterior se utilizan en el fichero FilterDefinition-Mapping.xml para restringir el acceso a determinados datos aplicándolos en dichos datos durante el proceso TAL. El fichero de asignación de definiciones de filtro se utiliza para aplicar aplicabilidad de opciones de acceso en datos concretos indicados con XPATH y el tipo de objeto.
Se trata de un fichero de asignación configurable que se conserva en la estructura de carpetas INICIO_INSERVICE/InS_SW/Config/System/Config. Este fichero se puede actualizar para controlar o aplicar la aplicabilidad en datos de paquete específicos durante el proceso TAL.
A continuación se muestra un ejemplo de este fichero:

<?xml version="1.0" encoding="UTF-8"?>
<FilterDefinitions>
<FilterDefinition type="IS" xmd="false">
FilterProperty label="Color" xpath="metadata[@id='PartList_4119316']/data[@name='Color']" delimiter=","/>
<FilterProperty label="number" xpath="metadata[@id='EPMDocument_4336801']/data[@name='number']" delimiter=","/>
<FilterProperty label="number" xpath="metadata[@id='EPMDocument_2042453']/data[@name='number']" delimiter=","/>
<FilterProperty label="Color" xpath="metadata[@id='EPMDocument_2053239']/data[@name='Color']" delimiter=","/>
</FilterDefinition>
<!--At entire document level -->
<FilterDefinition type="PDFM" xmd="true">
<!--For a specific pdf. -->
<FilterProperty label="number" xpath="Metadata[@id='EPMDocument_4336801']/Property[@token='number']/Value" delimiter=" "/>
<!--For every pdf. -->
<FilterProperty label="number" xpath="Metadata/Property[@token='number']/Value" delimiter=" "/>
</FilterDefinition>
<FilterDefinition type="IEXML" xmd="true">
<!--For a specific xml. -->
<FilterProperty label="number" xpath="Metadata[@id='EPMDocument_2042453']/Property[@token='number']/Value" delimiter=" "/>
<!--For every xml. -->
<FilterProperty label="number" xpath="Metadata/Property[@token='number']/Value" delimiter=" "/>
</FilterDefinition>
<FilterDefinition type="PARTSLIST" xmd="true">
<FilterProperty label="Color" xpath="Metadata[@id='PartList_4119316']/Property[@token='Color']/Value" delimiter=","/>
</FilterDefinition>
<FilterDefinition type="GRAPHIC" xmd="true">
<FilterProperty label="Color" xpath="Metadata[@id='EPMDocument_2053239']/Property[@token='Color']/Value" delimiter=" "/>
</FilterDefinition>
<!--For inline applicability. -->
<FilterDefinition type="IEXML" xmd="false">
<FilterProperty label="role" xpath="*[@applic_role]/@applic_role" delimiter=" "/>
</FilterDefinition>
<FilterDefinition type="PARTSLIST" xmd="false">
<FilterProperty label="DriveType" xpath="Metadata[@id='PartListItem_4119324']/Property[@token='DriveType']/Value" delimiter=","/>
</FilterDefinition>
<FilterDefinition type="PRT" xmd="false">
<FilterProperty label="Color" xpath="Metadata[@id='WTPart_3443834']/Property[@token='Color']/Value" delimiter=","/>
</FilterDefinition>
<!--For 3rd Party Bundle-->
<FilterDefinition type="KIT2PRT" xmd="false">
</FilterDefinition>
<FilterDefinition type="KIT2PRTLST" xmd="false">
</FilterDefinition>
<FilterDefinition type="PH" xmd="false">
</FilterDefinition>
<FilterDefinition type="PX" xmd="false">
</FilterDefinition>
</FilterDefinitions>
En un elemento FilterDefinitions se incluyen varios elementos FilterDefinition, cada uno específico de un tipo de paquete concreto y su uso.
El uso y propósito de los elementos y sus atributos se tratan en esta tabla:
Nombre de la propiedad
Tipo
Finalidad
FilterDefinition
elemento
Este elemento es específico de un tipo de paquete concreto y su uso.
type
atributo
Se especifica el tipo de paquete para el que se aplica el elemento FilterDefinition.
Los valores permitidos son: IS, PARTSLIST, GRAPHIC, PDFM e IEXML.
xmd
atributo
Se especifica si la aplicabilidad se debe aplicar a un nodo determinado o todo el documento.
Si se define en true, la aplicabilidad se aplica a todo el documento.
Si se define en false, la aplicabilidad se aplica a un nodo determinado.
FilterProperty
elemento
Se especifica la propiedad de filtro que se aplicará.
label
atributo
Se especifica el nombre de aplicabilidad que se aplica.
Por ejemplo: Color, Región, Origen, etc.
xpath
atributo
La expresión de XPATH al elemento de datos de paquete al que se aplica la aplicabilidad.
Ejemplo uno:

Metadata[@id='EPMDocument_1678511']
/Property[@token='Region']
/Value
Esto significa buscar los datos presentes en el elemento denominado Value de un elemento denominado Property con el atributo token definido en Region de un elemento denominado Metadata con el atributo id definido en EPMDocument_1678511.
Ejemplo dos:

*[@applic_Region]/@applic_Region
Esto significa buscar los datos presentes en el atributo denominado applic_Region de cualquier elemento.
Ejemplo tres:

Metadata[@id='EPMDocument_8978311']
/Property[@token='name']
/Value/@xml:lang
Esto significa buscar los datos presentes en atributo denominado xml:lang de un elemento denominado Value en un elemento denominado Property con el atributo token definido en name de un elemento denominado Metadata con el atributo id definido en EPMDocument_8978311.
Ejemplo cuatro:

Metadata/Property[@token='Region']
/Value
Esto significa buscar los datos presentes en el elemento denominado Value de un elemento denominado Property con el atributo token definido en Region de un elemento denominado Metadata.
delimiter
atributo
El delimitador que se usa para separar los valores en los casos en los que existen varios valores en ese elemento.
Por ejemplo: coma, punto y coma, espacio, etc.
Carga de la opción de acceso en el sistema
Entre todas las opciones y sus elecciones que están disponibles en el sistema, se pueden utilizar algunas de ellas, o todas, para restringir el acceso a algunos usuarios.
Para ello, se debe crear una lista de subconjuntos de opciones y elecciones como opciones de acceso y las opciones válidas que se van a cargar mediante el cargador de Windchill. En el fichero de carga se incluye la lista de opciones válidas y su tipo.
Cree un fichero XML con el nombre de opción y su tipo y, a continuación, colóquelo en esta ubicación: INICIO_INSERVICE/InS_SW/SW/Applications/Windchill.ear/loadXMLFiles/servicecenter. Por ejemplo: SCAccessOption.xml.
Ejecute el siguiente comando en un shell de Windchill:
windchill wt.load.LoadFromFile -u wcadmin -p wcadmin -d loadXMLFiles/servicecenter/SCAccessOption.xml
A continuación se muestra un ejemplo de este fichero:
<? xml version="1.0"?>
<! DOCTYPE InSObjects SYSTEM "standardX26.dtd">
<InSObjects>
<SCAccessOption>
<accessOptionLabel>Source</accessOptionLabel>
<accessOptionType>IE</accessOptionType>
</SCAccessOption>
<SCAccessOption>
<accessOptionLabel>Region</accessOptionLabel>
<accessOptionType>IE</accessOptionType>
</SCAccessOption>
</InSObjects>
El uso y propósito de los elementos se tratan en esta tabla:
Nombre de la propiedad
Tipo
Finalidad
SCAccessOption
elemento
Un marcador para definir un objeto AccessOption.
accessOptionLabel
elemento
El nombre de la opción.
accessOptionType
elemento
El tipo de la opción.
* 
Actualmente, el único tipo soportado es IE.