ONYX - 9.0 - Utilisation - Traitements divers

Différence entre versions

De MappingDoc
(Remplacement de champs dynamiques)
(Remplacement de champs dynamiques)
Ligne 46 : Ligne 46 :
  
 
- Pendant les traitements de composition, elle est définie dans le Workflow d’exécution comme un paramètre et ainsi automatiquement gérée dans le moteur comme une variable d’environnement attachée au traitement :
 
- Pendant les traitements de composition, elle est définie dans le Workflow d’exécution comme un paramètre et ainsi automatiquement gérée dans le moteur comme une variable d’environnement attachée au traitement :
 +
 +
<br />
 +
[[Fichier:OX S Dyn Champ.png|centré|sans_cadre|646x646px]]
 +
 +
  
 
- Après composition, elle peut prendre la valeur d’un index positionné dans le document XPS préalablement exporté dans l’environnement par l’argument '''-environment'''.
 
- Après composition, elle peut prendre la valeur d’un index positionné dans le document XPS préalablement exporté dans l’environnement par l’argument '''-environment'''.

Version du 18 avril 2019 à 12:36

Gestion du log

Le commutateur -logfile:XXX permet de rediriger l’ensemble des messages d’une commande map_xps dans un fichier texte :

map_xps -infile:/tmp/invoice.xps -toPDF -outfile:/tmp/invoice_InvoiceID.pdf -logfile:/var/logs/mylog.log


Liste des ressources

Le commutateur -listResource permet d’afficher à l’écran (sortie standard) les ressources (polices et images) embarquées dans un document XPS :

map_xps -infile:/tmp/invoice.xps -listResource


Extraction des données en XML

Le principe est de créer un fichier XML compatible M-Designer dans lequel toutes les données textes du document XPS sont exportées. Chaque zone de texte dans le fichier XPS devient un champ XML nommé de manière unique par ses positions en X et Y exprimées en points pour une résolution de 72 dpi.

Très peu utilisée en tant que telle, cette sortie XML trouvera son intérêt dans les calculs complémentaires effectués pour l’ajout de codes OMR.

Exemple:

map_xps -infile:/tmp/invoice.xps -toXMLDRAW -outfile:/tmp/result/invoice_data.xml

Extrait des données XML :

<?xml version="1.0encoding="UTF-16standalone="yes?>
<doc>
<page name="NORMAL">
<field name="x289y112">N° du client: 10638</field>
<field name="x289y87">Facture N° 10000 du 22/11/2008</field>
…
</page>
</doc>

Remplacement de champs dynamiques

Le principe est d’utiliser des champs de remplacement dynamiques en fonction du contexte d’exécution dans un document XPS. Pour cela, il est possible de définir dans un fichier XPS des champs en attente d’affectation. Ces champs seront ensuite remplacés par une valeur au moment de l’exécution.

Par exemple, un usage peut être d’imprimer la date d’édition sur un document mais cette date ne correspond pas au moment exact de la composition du document mais plutôt à celle de l’envoi du document à l’imprimante de destination. Au moment de la composition, dans le modèle de document M-Designer, il faut alors créer un champ en attente de remplacement sous la forme [[MA_DATE]](zone de texte). Une fois le document XPS composé, la valeur de ce champ MA_DATE sera remplacée dynamiquement par le commutateur de ligne commandes -replaceEnv. La valeur de remplacement sera retrouvée dans l’environnement système. Tout l’enjeu consiste donc à inscrire dans l’environnement une variable MA_DATE et à lui donner une valeur.

Plusieurs moyens pour cela :

- Avant composition, elle est passée en paramètre par l’application envoyant le fichier de données à composer dans ONYX Server et sera donc automatiquement gérée dans le moteur comme une variable d’environnement attachée au traitement.

Exemple : argument-o:MA_DATE=20150219 de la commande map_lpr

- Pendant les traitements de composition, elle est définie dans le Workflow d’exécution comme un paramètre et ainsi automatiquement gérée dans le moteur comme une variable d’environnement attachée au traitement :


OX S Dyn Champ.png


- Après composition, elle peut prendre la valeur d’un index positionné dans le document XPS préalablement exporté dans l’environnement par l’argument -environment.

Exemple : à l’issu de la composition, un document invoice.xps est obtenu contenant l’index MA_DATE. La commande suivante exporte les valeurs de l’index dans l’environnement puis utilise l’environnement pour remplacer dynamiquement le champ [[MA_DATE]] :

map_xps -infile:/tmp/invoice.xps -toPDF -outfile:/tmp/invoice.pdf -environment:MA_DATE -replaceEnv