Descripción

El módulo Orchestrator implementa la funcionalidad de parámetros dinámicos que puede ser utilizar en el parámetro de cualquier módulo de la solución.

Los parámetros dinámicos que se permiten en los dos métodos anteriores son:          

Si el moduleName es “actual à Devuelve el contentido del mensaje de entrada en el módulo.  Ej: @MODULE{actual}

 

 

Un ejemplo de configuración y uso de @MAP sería:

xmltransform.miparametro=@MAP[codigoefact][@XPATH(core){/ZINVOIC02_EFAC/IDOC/E1EDKA1[PARVW ='RS']/PAORG}]

xmltransform.codigosefact_name[0]=5828

xmltransform.codigosefact_value[0]=ESB1234500003

xmltransform.codigosefact_name[1]=5829

xmltransform.codigosefact_value[1]= @XPATH{/Facturae/cualquiernodo/valor}

xmltransform.codigosefact_name[2]=5810

xmltransform.codigosefact_value[2]= ESB12345000009

xmltransform.codigosefact_name[3]=DEFAULT

xmltransform.codigosefact_value[3]= ESB12345000003

 

 Otras formas de uso de los mapas

Los siguientes métodos definidos son otras formas de uso de los mapas que también están en los módulos.

Método getAdditionalData

Este método devuelve el hashMap de los nombres y valores de los parámetros incrementales con el “paramPrefix” especificados, teniendo en cuenta que irán por parejas “_name”, “_value” más el [index].

Por ejemplo,  si se quieren definir parámetros específicos para “documentum”, en los que necesitemos añadir algún metadato adicional, se haría:

paramPrefix = “metadata” à Valor fijo establecido dentro del módulo. (También se puede hacer dinámico. Ejemplo abajo)

Opciones de parámetros a definir en el Adapter:

1-      Con parámetro “metadata” fijado en el código del módulo. (Como constante)

-          metadata_name[0] = “nombreMetadato”

-          metadata_value[0] = “valor”

-          metadata_name[1] = “nombreMetadato1”

-          metadata_value[1] = “valor1”

 

2-      Con parámetro dinámico: <modulename>.paramPrefix (Leído de los parámetros del módulo)

-          <modulename>.paramPrefix = “metadata

-          metadata_name[0] = “nombreMetadato”

-          metadata_value[0] = “valor”

-          metadata_name[1] = “nombreMetadato1”

-          metadata_value[1] = “valor1”

 Método getAdditionalDataKey:

Este método devuelve el valor del “paramName” dado (actúa como key del hashmap), de entre valores de los parámetros incrementales con el “paramPrefix” especificados, teniendo en cuenta que irán por parejas “_name”, “_value” más el [index].

Este ”paramName” puede ser uno de los valores especificados en el punto de Parámetros Dinámicos.  Si se especifica un valor DEFAULT, se escogerá este si no encuentra ninguno.

 

Ejemplo para uso de certificados en módulo “wscall”. Parámetros a definir en el Adapter:

-          wscall.paramPrefix = “certificados”

-          wscall.paramKeyName= 02345 à Parámetro para recuperar el valor. Devolvería “Certificado2”

-          wscall.certificados_name[0] = 0001

-          wscall.certificados_value[0] = Certificado1

-          wscall.certificados_name[1] = 02345

-          wscall.certificados_value[1] = Certificado2

-          …

-          wscall.certificados_value[n] = DEFAULT

-          wscall.certificados_value[n] = CertificadoN

 

Ejemplo para uso de múltiples “hashmaps” en el módulo de documentum.

-          documdfs. paramPrefix_tipoDocumental=tipoDocumental

-          documdfs.tipoDocumental_paramKeyName=@XPATH(module){/Facturae/XXX}

-          documdfs.tipoDocumental_name[0]=NIF1

-          documdfs.tipoDocumental_value[0]=do_fac

-          documdfs.tipoDocumental_name[1]=DEFAULT

-          documdfs.tipoDocumental_value[1]=do_fac_default

-          documdfs.paramPrefix_user=user

-          documdfs.user_paramKeyName=@XPATH(module){/Facturae/XXX}

-          documdfs.user_name[0]= NIF1

-          documdfs.user_value[0]=usuario

-          documdfs.user_name[1]=DEFAULT

-          documdfs.user_value[1]=usuario_default