Componente predeterminado

Este componente aplica el valor predeterminado en función de las propiedades configuradas e invoca una clase para aplicar alteraciones temporales adicionales. También se puede utilizar para localizar datos en el XML.

La entrada a este componente es un XML y la salida es el mismo XML con los valores predeterminados aplicados. Las propiedades de este componente definen los atributos XML a los que se aplican los valores predeterminados. Los propios atributos se definen a través de la notación utilizada en otros componentes de servicio.

Por ejemplo, en la API createOrder() supongamos que la unidad de medida en el elemento <Item> en el nodo <OrderLine> necesita ser predeterminada. La propiedad de componente se define como:


Attribute=/Order/OrderLines/OrderLine/Item/@UnitOfMeasure
Default Value = "EACH"
Overrride = Y

Si el XML de entrada es:


<Order>
   <OrderLines>
   <OrderLine>
      <Item ItemID="" />
   </OrderLine>
   </OrderLines>
</Order>

Se añade un atributo UnitOfMeasure con el valor EACH al elemento Item. La propiedad de alteración temporal indica si el atributo del XML de entrada debe alterarse temporalmente independientemente de la existencia del atributo.

Las propiedades de configuración para el componente predeterminado definido en la tabla siguiente son opcionales.

Tabla 1. Propiedades de configuración de componente predeterminadas
Propiedad Descripción
Ficha General
Valores de plantilla predeterminados Especifique la vía de acceso para la plantilla predeterminada. Esta plantilla consta de un conjunto de atributos y sus valores predeterminados. Por ejemplo:

   <Overrides>
   <Override 
AttributeName="/Order/OrderLines/OrderLine/Ite
m/@UnitOfMeasure" AttributeValue="EACH" 
Override="Y" />
   </Overrides>

Tenga en cuenta que la vía de acceso del atributo es una variable XPath.

Clase personalizada Especifique la clase personalizada que proporciona los atributos predeterminados. Esta clase obtiene la entrada original del componente, el XML modificado por la plantilla predeterminada y aplica cualquier alteración temporal adicional y devuelve el XML de salida modificado. Esta clase implementa la interfaz YIFXXMLAttrOverride . Para obtener más información sobre esta interfaz, consulte el Javadoc.

Esta clase también puede verificar la existencia de orden y aplicar o alterar temporalmente los valores predeterminados aplicados anteriormente. Esta clase se utiliza principalmente para establecer el valor predeterminado basándose en la búsqueda de datos de la base de datos o para invertir el valor predeterminado, en el caso de una modificación.

Ruta de LocaleCode Especifique la vía de acceso del código de entorno local dentro del documento de entrada como una expresión XPath.

Puede especificar el atributo Localize en las alteraciones temporales personalizadas en lugar de especificar un valor de atributo estático. Por ejemplo, el archivo XML puede contener el tipo como:


   <Overrides>
   <Override 
AttributeName="//Organization/@OrganizationCod
e" Type="LOCALIZE" />
   </Overrides>
Pestaña Alteraciones temporales personalizadas
Ruta de elemento Especifica la vía de acceso del elemento para las alteraciones temporales personalizadas. Esta es una expresión Xpath.
Atributo Especifica el nombre del atributo.
Valor Especifica el valor del atributo.
Adición de una alteración temporal personalizada
Ruta de elemento Especifique la Xpath del elemento para las alteraciones temporales personalizadas.
Nombre de atributo Especifique el nombre del atributo XML que desea alterar temporalmente.
Localizar atributo Seleccione esta opción si el valor del atributo está localizado. La vía de acceso para la localización se especifica en LocaleCode.
Utilizar valor de atributo estático Seleccione esta opción si desea utilizar un valor de atributo estático.

Una vez seleccionada esta opción, puede especificar el valor y comprobar la alteración temporal de un valor existente.

Valor de atributo Especifique el valor para el atributo.
Sustituir siempre el valor existente Seleccione este recuadro si desea alterar siempre el valor existente con el nuevo valor especificado anteriormente.