OPALE - 10.0 - Utilisation
La commande MAP XPS
Sommaire
- 1 Introduction
- 2 Conversions de fichiers
- 3 Ajout de critères d’indexation au document
- 4 Extraction de valeurs de critères du document
- 5 Exporter les index et leurs valeurs
- 6 Utilisation des critères d’indexation
- 7 Concaténer des fichiers XPS
- 8 Gestion des codes OMR
- 9 Gestion des "PrintTickets"
- 10 Documents PDF ou HTML interactifs
- 11 Action exécutée après conversion
- 12 Maquettage avec sortie imprimée – Redirection dans une OUTQ
- 13 Divers
Introduction
La commande MAP_XPS est l'une des commandes principales d'OPALE Server. Elle permet d'effectuer un nombre important de traitements listés ci-dessous.
Dans un traitement typique, le fichier à maquetter est d'abord produit au format XPS via la commande MAPCPYSPLF, puis la commande MAP_XPS prend le relais pour effectuer les traitements souhaités sur le fichier XPS.
Pour utiliser la commande MAP_XPS, il faut passer par un CALL PGM(MAP_XPS) PARM ('-infile:/home/map2019/file.PDF' '-outfile:/home/map2019/file.xps' '-toXPS' '-fromPDF')
La commande MAPXPS (sans underscore) existe également. Elle possède moins de fonctionnalités et permet de réaliser principalement des conversions. Par contre, il faut d'abord charger la bibliothèque en question.
Conversions de fichiers
Conversion de documents en entrée
Le principe est de convertir des documents existants au format XPS, en vue de leur prise en charge et de leurs traitements futurs dans Mapping.
Les langages d’entrée supportés sont : AFP, ESCP, IGP, Image (BMP, JPG, PCX, PNG et TIFF), PCL, PDF, PS, SCS, TXT, Xerox, XPS, ZEBRA (ou ZPL), TEC
Exemples :
map_xps -infile:/home/map2019/email.pcl -fromPCL -outfile:/home/map2019/email.xps -toXPS map_xps -infile:/home/map2019/email.pdf -fromPDF -outfile:/home/map2019/email.xps -toXPS map_xps -infile:/home/map2019/email.afp -fromAFP -outfile:/home/map2019/email.xps -toXPS map_xps -infile:/home/map2019/email.igp -fromIGP -outfile:/home/map2019/email.xps -toXPS map_xps -infile:/home/map2019/email.zpl -fromZPL -outfile:/home/map2019/email.xps -toXPS map_xps -infile:/home/map2019/email.ps -fromPS -outfile:/home/map2019/email.xps -toXPS map_xps -infile:/home/map2019/image.jpg -fromImage -outfile:/home/map2019/image.xps -toXPS -profile:fromJPEG
Ce principe de conversion peut en outre être affiné en utilisant un profil défini dans le fichier de configuration.
Conversion des fichiers XPS vers un format de sortie
Le principe est de convertir des fichiers XPS (générés ou non par Mapping) en vue de leur diffusion finale (impression, envoi par mail, archivage…) et en fonction de leur canal de diffusion.
Les langages de sortie supportés sont : AFP, BMP, DOCX, DPL, EPL, ESC, ESCP, HTML, IGP, JPG, Monarch, PCL, PDF, PNG, ProPrinter, PS, RTF, TEC, TIF, TXT, XMLDRAW, XPS, ZEBRA / ZPL.
Exemples :
map_xps -infile:/home/map2019/email.xps -toPCL -outfile:/home/map2019/email.pcl map_xps -infile:/home/map2019/email.xps -toPDF -outfile:/home/map2019/email.pdf
Ce principe de conversion peut en outre être affiné en utilisant un profil défini dans le fichier de configuration.
Exemple :
map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf –convert –config:MYPDF
Avec les paramètres :
-config:XXXX ou -profile:XXXX => sélection du profil à utiliser pour la conversion -convert => force la conversion en utilisant le profil sélectionné
Et un profil MYPDF défini dans le fichier de configuration :
<MYPDF> <label>for Adobe Reader</label> <language>PDF</language> <embeddedfont>OFF</embeddedfont> <color>ON</color> </MYPDF>
Pour appeler un profil de conversion en ligne de commande, le langage doit être à « *AUTO » sur iSeries, et ne doit pas être "forcé" sur Unix ou Windows (pas d’utilisation simultanée des arguments - profile:XXX et -toPCL par exemple).
Paramètres spécifiques pour la sortie AFPDS
En complément de la conversion XPS vers AFPDS, il est possible de forcer la résolution des polices et des images :
-fontRes:300 : résolution des polices -imageRes:300 : résolution des images
Valeurs supportées : 240, 300 ou 600 dpi.
Utilisation des paramètres de profils
Tous les paramètres mentionnés et expliqués dans les conversions (entrée ou sortie) sont également utilisables en ligne de commande. Pour cela, la syntaxe suivante devra être ajoutée à la commande map_xps de conversion :
-param:nom_du_paramètre=valeur
Exemple :
map_xps -infile:/home/map2019/label.xps -outfile:/home/map2019/label.zpl -toZPL -param:resolution=203 -param:barcode=off
Gestion des critères d’indexation
Lister les index disponibles et leurs valeurs
Pour lister tous les critères d’indexation présents dans le document
Exemple :
map_xps -infile:/home/map2019/email.xps -dumpIndex
Pour lister toutes les valeurs d’un index présent dans le document Indexation d’un document
Exemple :
map_xps -infile:/home/map2019/email.xps –dumpIndex:CUSTOMER
Ajout d’une valeur d’index sur toutes les pages d’un document
Dans certains cas, il se peut qu’un critère d’indexation soit bien présent sur toutes les pages, mais sans valeur pour certaines pages, ou bien que le critère d’indexation ne soit pas présent sur toutes les pages. La commande suivante permet alors de réindexer le document en copiant, pour les pages sans valeur d’index, la valeur de l’index se trouvant sur la page précédente.
Exemple :
map_xps -infile:/home/map2019/email.xps –copyEmptyIndex:INVOICE
Fichier avant passage de la commande :
Page Index Valeur 1 INVOICE 1 2 3 INVOICE 2 4 INVOICE 3 5
Fichier après passage de la commande :
Page Index Valeur 1 INVOICE 1 2 INVOICE 1 3 INVOICE 2 4 INVOICE 3 5 INVOICE 3
Ajout de critères d’indexation au document
Le principe est d’indexer un document en ajoutant un ou plusieurs critères.
Les valeurs de chaque critère peuvent être précisées en clair sur la ligne de commande : toutes les pages du document auront alors la même valeur d’index.
Exemple :
map_xps -infile:/home/map2019/email.xps -addCriteria:NUMORDER=123456
Plus généralement, les valeurs d’un index seront issues d’une extraction préalable d’informations contenues dans le document lui-même, et stockées dans un fichier texte temporaire (consulter ci-après). La syntaxe précédente doit utiliser le mot clé « FILE: » pour spécifier que les valeurs de l’index ajouté doivent être reprises du fichier créé précédemment.
Exemple :
map_xps -infile:/home/map2019/email.xps -addCriteria:NUMORDER=FILE:/home/map2019/email.txt [ –outfile:/home/map2019/email_indexed.xps ]
Extraction de valeurs de critères du document
Le principe est de rechercher des informations contenues dans le document et de les extraire dans un fichier temporaire, pour ensuite les ajouter comme valeurs d’un critère d’indexation du même document. Le fichier temporaire créé est au format texte, en Unicode, avec la syntaxe suivante : "valeur[TAB]page[CRLF]"
La collecte des informations dans le document peut se faire par mot clé ou par position.
Les informations retournées peuvent être nettoyées des espaces superflus avant et/ou après le texte, avec les paramètres suivants :
-ltrim : suppression des espaces avant le texte -rtrim : suppression des espaces après le texte -trim : suppression des espaces avant et après le texte
Exemple 1 : recherche par mot clé
map_xps -infile:/home/map2019/email.xps -extract:/home/map2019/email.txt "-filter:Invoice for order" -length:10 –shift:2 -rtrim
Extraction de 10 caractères, situés 2 caractères après le mot clé "Invoice for order", en supprimant les espaces superflus après le texte retourné
Exemple 2 : recherche par position
map_xps -infile:/home/map2019/email.xps -extract:/home/map2019/email.txt "-box:100,150,180,30,mm"
Les paramètres de la « box » précisent ses dimensions. La syntaxe est : xx.xx,xx.xx,xx.xx,xx.xx[,cm|in|mm]
4 nombres décimaux, spécifiant dans l’ordre : top (haut), bottom (bas), left (gauche), right (droite)
Le séparateur de décimale est le ‘.’
Le séparateur de valeurs est ‘,’ ou ‘;’
Le dernier paramètre (optionnel) est l’unité de ces coordonnées : en point (pour une résolution de 96dpi) par défaut, en millimètre (mm), en centimètre (cm) ou en pouce (in)
Exporter les index et leurs valeurs
Le principe est la création d’un fichier d’index à partir d’un document, en vue de son archivage dans un logiciel tiers. Le fichier d’index peut être au format TXT, XML, ou IND (compatible Content Manager).
Le paramètre « -duplicateindex » permet d’exporter également les index dont la valeur est la même sur plusieurs pages.
Exemples :
map_xps -infile:/home/map2019/mail.xps -indexfile:/home/map2019/file.txt –toXPS [-duplicateindex] map_xps -infile:/home/map2019/email.xps -indexfile:/home/map2019/file.xml -toXPS [-duplicateindex] map_xps -infile:/home/map2019/email.xps -indexfile:/home/map2019/file.ind -toXPS [-duplicateindex]
Utilisation des critères d’indexation
Trier un document
Le principe est de trier un document suivant les valeurs d’un ou plusieurs critères d’indexation. Un seul fichier sera créé en sortie. Le tri s’effectue par ordre croissant sur des valeurs numériques par défaut. L’utilisation de l’option ALPHA permet de réaliser un tri sur des valeurs alphanumériques, l’option REVERSE permet un tri par ordre décroissant.
Exemples :
map_xps -infile:/tmp/email.xps -outfile:/tmp/email.pdf –sort:CUSTNBR -toPDF map_xps -infile:/tmp/email.xps -outfile:/tmp/email.pdf –sort:ALPHA:MAPSEND -toPDF map_xps -infile:/tmp/email.xps -outfile:/tmp/email.pdf –sort:CUSTNBR,INV_NBR -toPDF map_xps -infile:/tmp/email.xps -outfile:/tmp/email.pdf -sort:CUSTNBR,REVERSE:INV_NBR -toPDF
Éclater un document
Le principe est d’éclater un document suivant les valeurs d’un ou plusieurs critères d’indexation. Autant de fichiers peuvent être créés en sortie qu’il y a de valeurs différentes du ou des critères utilisés.
Exemple :
map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email_[[MAPSEND]].pdf –toPDF
Le mode BUNDLEONINDEX permet de créer des lots en fonction du nombre de pages pour chaque valeur de critère (par exemple : 1 fichier avec les documents de 1 à 4 pages, 1 fichier pour les documents de 5 à 9 pages, un fichier pour les documents de plus de 10 pages). Il est possible de créer autant de lots que souhaité.
Exemple :
map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email_[[BUNDDLEONINDEX,MAPSEND,1,5,10]].pdf –toPDF
En mode BUNDLEONINDEX, l’éclatement peut également se faire suivant un nombre de feuilles (en fonction des informations de recto/verso ou non), la syntaxe devient :
map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email_[[BUNDDLEONINDEX=LEAF,MAPSEND,1,5,10]].pdf –toPDF
Filtres sur des valeurs de critères
Le principe est "d’isoler" certaines pages d’un document en fonction des valeurs d’un ou plusieurs critères d’indexation. Cela peut servir notamment pour créer un document en sortie ne concernant que certains clients.
Exemples :
map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -toPDF –filter:CUSTOMER=426 map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -toPDF "-filter:(CUSTOMER=4026) OR (CUSTOMER=1458) AND (PRICE=15)"
Cela peut également s’avérer très utile pour n’effectuer des actions que sur certaines pages, dépendant de valeurs de critères (notamment la gestion des PrintTickets).
Concaténer des fichiers XPS
Le principe est d’ajouter plusieurs documents les uns à la suite des autres. Le document de sortie est la concaténation de tous les fichiers précisés sur la ligne de commande, dans l’ordre où ils ont été précisés.
On peut ensuite imaginer un tri suivant des critères d’indexation préalablement définis sur chaque fichier pour faire du regroupement de fichiers de plusieurs sources différentes (facture + CGV + lettre d’information…)
Exemples :
Concaténation de plusieurs fichiers XPS en une seule fois :
map_xps -outfile:/home/map2019/final.xps -add:/home/map2019/test1.xps -add:/home/map2019/test2.xps –add:/home/map2019/test3.xps
Concaténation en plusieurs fois, dans le cas où l’on ne connait pas d’avance le nombre de fichiers XPS en entrée :
map_xps -tempfile:/home/map2019/final.xps -add:/home/map2019/test1.xps map_xps -tempfile:/home/map2019/final.xps -add:/home/map2019/test2.xps map_xps -tempfile:/home/map2019/final.xps -add:/home/map2019/test3.xps
Gestion des codes OMR
Introduction :
Grâce à la commande MAPQUALSPL sur MAPPING iSeries, Windows et UNIX on peut insérer plusieurs informations dans un spool. Avec les différentes possibilités afin de mettre en place les codes de mise sous pli.
Cas d’utilisation : Voici un exemple qui explique en détails la commande
Ce spool contient 14 pages, les 4 premières concernent le client Dupond, les 3 suivantes concernent le client Durand et les 7 dernières concernent le client Lemaire.Dans la suite de ce document, nous allons qualifier ce spool suivant la clé « Nom client », à l’aide de la commande MAPQUALSPL. Voici ci-dessous l’interface de la commande sur iSeries avec tous les paramètres disponibles.
Il est important de souligner que la position des informations est ajoutée dans le fichier à partir de la position définie dans la commande (surligné en jaune ci-dessous) et que les informations ajoutées remplacent les informations existantes s’il y en a : il faut donc choisir un endroit vide dans la page.
MAPQUALSPLF (MAPQUALSPL)
Name of DataBase for sort . . . NAME SORTDB
Line Number . . . . . . . . . . LINE 1
Column Number . . . . . . . . . COL 1
Create spool file . . . . . . . CREATE *YES
Spoolfile Name to Create . . . . SPLFNAME SORTSPLF
Outq . . . . . . . . . . . . . . OUTQ *JOB
Outq Library . . . . . . . . . . OUTQLIB *LIBL
Hold spool file . . . . . . . . RDY *NO
Control sort splfname . . . . . CONTROL N Input spool file length . . . . SIZE 255
Input spool file height . . . . HEIGHT 255
Input spool file overflow . . . OVERFLOW 60
Modulo . . . . . . . . . . . . . MODULO '7'
Sequence modulo . . . . . . . . MODSEQ ' '
Max. quota . . . . . . . . . . . QUOTA '0'
Use duplex . . . . . . . . . . . DUPLEX 'N'
Positions 1 à 6 - Incrémentation du numéro de pages à l'intérieur de la rupture
Positions 7 à 12 - Nombre de pages total de la rupture
Position 13 - Code de rupture
- 1 : Page "entête" (première)
- 2 : Page "suite" (milieu)
- 3 : Page "total" (dernière)
Positions 14 à 18 - Code de mise sous pli type Kern
Bit de parité: Le bit de parité varie automatiquement. Son calcul se fait sur la valeur des bits BS4, BS2, BS1 et DGR. Si la somme des bits BS4, BS2, BS1 et DGR est paire alors le bit de parité a pour valeur 1. En revanche si la somme des bits BS4, BS2, BS1 et DGR est impaire alors le bit de parité a pour valeur 0.
BS4, BS2, BS1 : Bits de sécurité
Décrémentation ou incrémentation d'une valeur binaire à chaque page.
La sélection du mode de codage se fait au moment du passage de la commande MAPQUASPL en faisant varier le paramètre MODULO.
Modulo 7
Décrémentation de la valeur 7 (111 – en binaire) à la valeur 1 (001 – en binaire)
Modulo 8
Décrémentation de la valeur 7 (111 – en binaire) à la valeur 0 (000 – en binaire)
Modulo R
Incrémentation de la valeur 0 (000 – en binaire) à la valeur 7 (111 – en binaire)
Modulo T
Incrémentation de la valeur 1 (001 – en binaire) à la valeur 7 (111 – en binaire)
Modulo 4
Décrémentation de la valeur 4 (11 – en binaire) à la valeur 0 (00 – en binaire)
Modulo F
Incrémentation de la valeur 1 (0001 – en binaire) à la valeur 15 (1111 – en binaire)
DGR - Code de fermeture enveloppe
Suivant votre machine de pli, le code de fermeture de l’enveloppe se situe en première ou en dernière page. Le paramètre « Insert tag on last page », de la commande MAPQUALSPL permet de déterminer la position du bit de fermeture.
Si « Insert tag on last page . . . . 'N' » alors DGR à 1 sur la première page.
Si « Insert tag on last page . . . . 'O' » alors DGR à 1 sur la dernière page.
Rupture en cours – Nombre de ruptures totales (Position 19-24 et 25-30)
Lors du passage de la commande MAPQUALSPL, il est possible d’ajouter deux informations : la rupture en cours et le nombre de ruptures totales.
Pour ajouter ces informations, exécutez la commande MAPQUASPL avec le paramètre « Add number of break values . . . » à 'O'.
Positions 31 à 33 – Incrémentation ou décrémentation à chaque rupture
Pour encore plus de sécurité, certaines machines de pli utilisent un contrôle à chaque rupture dans le spool.
La commande MAPQUALSPL permet de rajouter ces informations. Il s’agit du paramètre SEQUENCE MODULO.
Sequence Modulo 7
Les valeurs disponibles pour ce paramètre sont les suivantes : « », « 7 », « 8 », « R », « 4 », « T ». Elles ont la même signification que pour les bits de sécurité (BS4, BS2, BS1). Merci de vous reporter à la partie BS4, BS2, BS1 : Bits de sécurité, pour connaitre la signification de ces valeurs.
Si vous ne souhaitez pas utiliser ces valeurs, laissez le paramètre à blanc.
Important: Ces trois bits sont pris en compte lors du calcul de la parité.
Gestion des "PrintTickets"
Le principe est de gérer les différents paramètres d’un travail d’impression pour un document, soit au niveau travail complet, soit à la page.
La syntaxe générale est :
map_xps -infile:/home/map2019/email.xps -set:NOM=VALEUR
L’option « -filter:XXX » permet de n’affecter un attribut d’impression que sur certaines pages, en fonction de valeurs d’indexation du document.
Les différents attributs "PrintTicket" reconnus sont :
DUPLEX : gestion du recto/verso
- yes/no : recto/verso en suivant les bords longs, ou recto seul
- long/short/F : recto/verso en suivant les bords longs ou courts, ou recto seul
FRONTSIDE (on/off): force l’impression sur le recto (en sortie PCL uniquement, en combinaison avec les options -filter:XXX et -pages:*)
INPUTBIN / OUTPUTBIN (valeur numérique) : gestion des bacs d’entrée/sortie
- ORIENTATION (valeur numérique)
- 0: Portrait
- 1: Landscape (paysage)
- 2: ReversePortrait (portrait retourné/inversé) 3: ReverseLandscape (paysage retourné/inversé)
COPY (valeur numérique) : nombre de copies
STAPLE (valeur numérique) : agrafage
- 1 = SaddleStitch (agrafage au milieu de la feuille)
- 2 = StapleBottomLeft (agrafage en bas à gauche)
- 3 = StapleBottomRight (agrafage en bas à droite)
- 4 = StapleDualBottom (agrafage en bas)
- 5 = StapleDualLeft (agrafage à gauche)
- 6 = StapleDualRight (agrafage à droite)
- 7 = StapleDualTop (agrafage en haut)
- 8 = StapleTopLeft (agrafage en haut à gauche)
- 9 = StapleTopRight (agrafage en bas à droite)
- 10 = None (stopper l’agrafage)
MEDIATYPE (valeur alphabétique) : type de papier Exemples : Archive, Etiquette, Bristol, AutoSelect…
NUP (valeur numérique : 1, 2 ou 4) : regroupement de 1, 2 ou 4 pages du document initial sur 1 page en sortie
LEFTOFFSET : marge de gauche en points
TOPOFFSET : marge supérieure en points
JOBCUT : yes/no. Commande de rupture de job (pour utiliser le cutter sur les imprimantes possédant le dispositif)
TOGGLE : yes/no. Commande de décalage du papier.
Remarque :
Tous ces différents paramètres devront ensuite être gérés dans des profils de conversion du fichier XPSConfig.conf, en fonction de la destination finale des documents.
Il est également possible d’utiliser ces paramètres lors d’une conversion directe sans passer par le -set : -duplex:LONG au lieu de -set:DUPLEX=LONG.
Exemples :
- Pour paramétrer le recto/verso sur un fichier XPS existant :
map_xps -infile:/home/map2019/myfile.xps -set:DUPLEX=yes
- Pour paramétrer le recto uniquement sur un fichier XPS existant :
map_xps -infile:/home/map2019/myfile.xps -set:DUPLEX=no
- Pour gérer les PrintTickets au niveau page :
map_xps -infile:/home/map2019/email.xps -set:INPUTBIN=2 -pages:2,3
- Pour paramétrer le recto sur la première page et recto/verso sur les suivantes :
map_xps -infile:/home/map2019/myfile.xps -set:DUPLEX=yes map_xps -infile:/home/map2019/myfile.xps -set:DUPLEX=no -pages:1
Documents PDF ou HTML interactifs
Gestion des inputs box
Le nom du bouton doit champs bouton doit être « SUBMIT ».
-param:url=http://127.0.0.1:8002/cgi-bin/mapsoapserver.exe/mapRunPost ?
map_xps -infile:/tmp/form_vide.xps -outfile:/tmp/test.pdf -toPDF -param:url=http://127.0.0.1:8002/cgi-bin/mapsoapserver.exe/mapRunPost?
map_xps -infile:/tmp/form_vide.xps -outfile:/tmp/test.html -toHTML -param:url=http://127.0.0.1:8002/cgi-bin/mapsoapserver.exe/mapRunPost?
Avec envoi d’e-mail :
map_xps -infile:/tmp/form_vide.xps -outfile:/tmp/test.html -toHTML -param:url=http://127.0.0.1:8002/cgi-bin/mapsoapserver.exe/mapRunPost? -toMail - from:exp@mydomain.net -to:dest@mydomain.net -subject:form -server:192.168.1.2 -domain:mydomain.net
Remplacement des inputs box en automatique
Remplacement des champs input box par des valeurs en dur.
Création de la commande par défaut :
map_echo "Cache-Control: no-cache\nContent-type: application/pdf;\n\n" map_xps -infile:/tmp/form_vide.xps "-formfile:[%MAP_FILE%]" -outfile:/tmp/testfill.pdf "-toPDF" map_echo -infile:/tmp/testfill.pdf
Exemple du fichier XML de remplacement :
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <input><post><ADD1>Votre nom</ADD1><ADD2>Votre nom</ADD2><CITY>Votre nom</CITY><NAME>LABEL_NAME</NAME><SUBMIT>Yes</SUBMIT><SURNAME>Votre pr%e9nom</SURNAME><ZIP>Votre nom</ZIP></post></input>
Exemple :
map_xps -infile:/tmp/email.xps -formfile:xxx.xml –outfile:/tmp/test.xps -toXPS
Adressage des canaux de sortie
Affichage d’un fichier à l’écran (Windows uniquement)
map_xps -infile:c:\trash\label.zpl -fromZPL –toGDI
Envoyer le document vers le spooler Windows
Principe : en sortie des traitements effectués par la commande map_xps, redirection du fichier résultant vers une imprimante Windows déclarée sur le poste, en utilisant son driver. Note : requiert la dll MapXpsTools.dll
Exemple :
map_xps -infile:/tmp/label.zpl -fromZPL -toGDI -toPrinter:XXX
Options supplémentaires :
-FitPage : impression pleine page -Orientation:X : 1=Portrait, 2=Paysage -res:72 : résolution -bpp:X : paramètre pour la couleur : 1=Noir et blanc, 8=niveau de gris, 16 et 24=couleur -rotation:XX : angle de rotation en degrés (90,180,270,-90) -verbose : affichage des erreurs dans la sortie standard (stderr) -logfile:C:\log.txt : redirection des erreurs dans un fichier de log -TimeOut:XX : Timeout (en secondes) si l’imprimante ne répond pas
Envoyer le document vers le spooler Mapping
Principe : en sortie du ou des traitements effectués par la commande map_xps, redirection du fichier résultant vers une file d’attente du Spooler Mapping.
Paramètre obligatoire :
-toQueue:XXXX => la file d’attente configurée dans le Spooler Mapping
Paramètres optionnels :
-title:XXX => Titre du spool -user:XXX => Utilisateur propriétaire du spool -map_save => Conserver le spool après édition -map_hold => Envoyer le spool à l’état "Pause" -map_priority:NNN => Ordre de priorité du spool -map_nb_copy:NNN => Nombre de copies -map_retention:NNN => Durée de rétention du spool -map_compress:NNN => Attribut "Date de compression" -map_security:NNN => Niveau de sécurité du spool -map_codecompta:NNN => Code de comptabilité du spool -map_fidelity:NNN => Attribut "Fidélité" -map_userData:XXX=XXX => Attribut userData -o:XXX=XXX => Attribut userData
Action exécutée après conversion
Il est possible d’exécuter une commande (ligne de commande, bat, shell) après la conversion à l’aide du paramètre – exec.
-exec: exécute une commande après la conversion
map_xps -infile:c:\tmp\infile.xps -toPDF –outfile:U:\share\file.pdf "-exec:c:\tmp\cmd.bat"
Action sur erreur ou succès
Principe : exécution d’actions particulières lors du déclenchement des événements « Erreur » et/ou « Succès ».
-onError: commande exécutée en cas d’erreur -onSuccess: commande exécutée en cas d’erreur map_xps -infile:c:\tmp\infile.xps -toPDF –outfile:U:\share\file.pdf "-onError:c:\tmp\error.bat" "- onSuccess:c:\temp\success.bat"
Envoyer un email
Principe : en sortie des traitements effectués par la commande map_xps, envoi direct du fichier résultant par email.
Paramètres obligatoires :
-toEmail | -toMail -server:XXX => serveur SMTP -from:XXX => expéditeur -to:XXX => destinataire(s) -infile:XXX => fichier XPS à joindre à l’email envoyé
Paramètres optionnels (le caractère optionnel ou non de certains arguments listés ci-après peut dépendre du serveur SMTP adressé) :
-domain:mydomain.net => domaine du serveur SMTP -port:25 => port du serveur SMTP -login:username => identifiant de connexion au serveur SMTP -passwd:******* => mot de passé de connexion au serveur SMTP -cc:XXX => destinataire(s) en copie -bcc:XXX => destinataire(s) en copie cachée "-subject:This is my subject" => sujet du message "-body:This is my body" => corps du message au format texte -bodyhtml:XXX => corps du message au format HTML -bodyhtml:FILE:c:\tmp\bodyhtml.html -footer:XXX => Pied de page du mail au format texte -footerhtml:XXX => Pied de page du mail au format HTML -footerhtml:FILE=c:\tmp\footer.html -attachment:XXX => ajout de pièce(s) jointe(s) supplémentaire(s), séparées par une virgule -outfile:XXX => dans le cas de l’envoi d’email, cet argument sert à nommer la pièce jointe principale (argument infile) envoyée
Exemple 1 :
map_xps -infile:c:\temp\fichier.xps -toMail -from:XXX -to:XXX -login:XXX -passwd:XXX -server:XXX "-subject:Test envoi email" "-body:Ceci est un test" -outfile:nomPJ.xps
Exemple 2 : avec ajout de 2 pièces jointes
map_xps -infile:c:\temp\fichier.xps -toMail -from:XXX -to:XXX -login:XXX -passwd:XXX -server:XXX "-subject:Test envoi email" "-body:Ceci est un test" -outfile:nomPJ.xps -attachment:C:\temp\PJ1.pdf,C:\temp\PJ2.pdf
Exemple 3 : avec conversion en PDF de la pièce jointe
map_xps -infile:c:\temp\fichier.xps -toMail -from:XXX -to:XXX -login:XXX -passwd:XXX -server:XXX "-subject:Test envoi email" "-body:Ceci est un test" -toPDF -outfile:nomPJ.pdf
Maquettage avec sortie imprimée – Redirection dans une OUTQ
Maquettage du document et conversion implicite / explicite en sortie
Les langages de sortie supportés lors d’un MAPCPYSPLF sont les suivants : o Paramètre TYPLAN :
Valeur Remarque
- PCL
- AFPDS
- ZEBRA
- DATAMAX
- AUTO Valeur du menu 14/1
- IGP
- TEC
- IPL
- F_D
- EPL
- XPS
La valeur spéciale *AUTO reprend la valeur du paramètre saisi dans l’option 14/1 (Menu d’exploitation / Paramètres d’environnement de Mapping).
Dans ce cas, si *AUTO est spécifié dans le paramètre TYPLAN de la commande, le logiciel utilisera les maquettes développées en langage PCL.
o Paramètre XPSCONVERT :
Valeur Remarque
- AUTO Valeur du 14/14 - Paramètre PROFILE
Valeur de profil Celui spécifié dans le XPSConfig.conf
La valeur spéciale *AUTO permet de récupérer le nom de profil de l’imprimante qui est paramétré dans l’option 14/14 (Menu d’exploitation / Définition des paramètres imprimantes)
Exemple de définition :
Ici, pour toutes les imprimantes, le profil *PCL est spécifié. Ce qui permet par exemple, de ne pas avoir à spécifier le nom de toutes les Outq / Devices du système si les imprimantes physiques sont des Laser.
Ce nom de profil doit être paramétré dans le fichier XPSConfig.conf (situé dans l’IFS, sous la racine du répertoire MAPPING).
Un fichier de configuration par défaut est installé avec les valeurs suivantes :
<xpsconfig>
- This file contains the conversion profile for Mapping.
- You can create your own profile based on the Mapping documentation. BE CAREFUL WITH THE FILE STRUCTURE.
- PROFILE NAME STARTING WITH * ARE RESERVED FOR MAPPING. SO DO NOT CREATE OR MODIFY A PROFILE STARTING WITH *.
<*XPS> <label>DO NOT MODIFY - standard XPS</label> <language>XPS</language> </*XPS> <*PCL> <label>DO NOT MODIFY - standard PCL5/e</label> <language>PCL</language> <color>off</color> </*PCL>
Dans cet exemple, le profil *PCL utilise le langage PCL (paramètre <language> du profil.
Exemple de commandes pour sortie imprimée
Exemple de commande : MAPCPYSPLF SPLF(SPOOL) SPLNUM(7) JOB(QPADEV003K) JOBNUM(062592) USER(XXX) MAPNAM(INVOICEXPS) MAPSEQ(00010) OUTQ(PCLPRT) TYPLAN(*XPS) XPSCONVERT(*AUTO)
Explications :
TYPLAN : Pour positionner le langage de la maquette.
Mais ce paramètre accepte aussi la valeur *AUTO : Auquel cas, le programme récupère la valeur positionnée dans l’écran 14/1
XPSCONVERT : Conversion implicite réalisée en sortie. Ici, avec *AUTO le profil utilisé est celui qui est paramétré dans l’option 14/14.
Autre exemple de commande :
MAPCPYSPLF SPLF(SPOOL) SPLNUM(7) JOB(QPADEV003K) JOBNUM(062592) USER(XXX)
MAPNAM(INVOICEXPS) MAPSEQ(00010) OUTQ(PCLPRT) TYPLAN(*XPS) XPSCONVERT(*PCL)
Explications :
XPSCONVERT : Conversion explicite réalisée en sortie. Ici, avec *PCL, c’est le profil *PCL du fichier XPSConfig.conf qui sera utilisé.
Maquettage avec sortie fichier dans l’IFS
Maquettage du document avec conversion et stockage dans l’IFS
Les mêmes commandes peuvent être utilisées afin de placer le résultat du maquettage et de la conversion dans un dossier de l’IFS. Il suffit pour cela de renseigner le paramètre XPSOUTFILE. En effet, la valeur par défaut de XPSOUTFILE est à *PRINT, pour ne pas générer de sortie fichier.
Exemple :
MAPCPYSPLF SPLF(SPOOL) SPLNUM(7) JOB(QPADEV003K) JOBNUM(062592) USER(XXX) MAPNAM(INVOICEXPS) MAPSEQ(00010) OUTQ(PCLPRT) TYPLAN(*XPS) XPSCONVERT(*PCL) XPSOUTFILE(‘/home/mapping/invoice.pcl’)
Divers
Rediriger la log dans un fichier
Principe : récupérer toutes les logs des commandes map_xps dans un fichier texte.
Exemple :
map_xps -infile:/tmp/email.xps –logfile:/tmp/mylog.log
Lister les ressources
Principe : affichage de toutes les ressources (polices et images) embarquées dans un fichier XPS.
Exemple :
map_xps -infile:/tmp/email.xps –listResource
Extraction de pages
Principe : définir des intervalles et/ou des sélections de pages à traiter. Les intervalles de pages sont à préciser sur la ligne de commande, les sélections peuvent être dans un fichier texte, où la syntaxe est : numéro de page+CRLF. L’utilisation du caractère ‘*’ est possible pour les intervalles de pages, pour choisir la fin du document.
Exemples :
map_xps -infile:/tmp/email.xps -outfile:/tmp/email.pdf -pages:1,3,4,7,10 –toPDF map_xps -infile:/tmp/email.xps -outfile:/tmp/email.pdf -pages:3-10 –toPDF map_xps -infile:/tmp/email.xps -outfile:/tmp/email.pdf -pages:1,5,10-* –toPDF map_xps -infile:/tmp/email.xps -outfile:/tmp/email.pdf -pages:FILE:/tmp/test.txt –toPDF
Extraction des données en XML (pour M-Designer)
Principe : créer un fichier XML compatible pour M-Designer, dans lequel toutes les données textes du fichier XPS sont extraites. Chaque zone de texte dans le fichier XPS devient un champ XML, nommé de manière unique par ses positions en X et Y. Les positions X et Y sont définies en 72 dpi.
Ce mode est aussi utilisé pour créer un fichier XML servant de base à l’ajout de codes OMR. Voir à ce sujet la documentation spécifique à l’ajout de code OMR.
Exemple :
map_xps -infile:c:\test\billing.xps –toXMLDRAW -outfile:c:\test\result\billing.draw.xml
Conversion d’images
Taille
-sizeX : largeur de l’image en pixels
-sizeY : hauteur de l’image en pixels
Si un seul des 2 paramètres est renseigné, le ratio initial est conservé. Si les 2 paramètres sont renseignés, le ratio est recalculé en fonction de ces 2 valeurs (et l’image déformée si nécessaire).
Nombre de couleurs -bpp : nombre de bits par pixels. Valeurs possibles : 1, 4, 8, 16 et 24 2 couleurs (1 bit), 16 couleurs (4 bits), 256 couleurs (8 bits), 65 536 couleurs (16 bits) ou 16,8 millions de couleurs (24 bits).
Format et taille des pages d’un document Pour modifier la taille des pages du document, ou la taille des données à l’intérieur d’une page, il existe 3 arguments de la ligne de commande, ayant chacun leur fonctionnel :
-paper:XXX : permet de changer la taille du papier (de la page), sans toucher au contenu. -scale:XXX : permet de changer la taille du contenu, sans toucher au papier. -changeformat:XXX : permet de changer le format du document, en modifiant la taille du papier tout en adaptant en contenu (avec conservation des proportions).
Syntaxes
Pour une mise à l’échelle du contenu d’une page, l’argument « -scale:XXX » prend des valeurs de pourcentage, de 0 (si si, juré !!) à infini (attention aux pertes de données avec des valeurs supérieures à 100, puisque la taille du papier n’est pas modifiée). Pour modifier la taille de la page en sortie, avec modification ou non du contenu, les arguments « - changeformat:XXX » et « -paper:XXX » permettent de définir la taille du format, soit à la norme ISO, soit en personnalisé. Valeurs possibles ISO : AUTO, EXECUTIVE, LETTER, LEGAL, LEDGER, A4, A3, A2, A1, A0, MONARCH, COM10, DL, CS, B5 Syntaxe pour taille personnalisée : -changeformat:xx.xx,xx.xx[,cm|in|mm] 2 valeurs décimales correspondant respectivement à largeur et hauteur Le séparateur de décimale est le ‘.’ Le séparateur de valeurs est ‘,’ ou ‘;’ L’unité est optionnelle : cm (par défaut), mm ou in (pour inch) Exemples :
map_xps -infile:c:\test\billing.xps –scale:50 -outfile:c:\test\out.xps map_xps -infile:c:\test\billing.xps –changeformat:A4 -outfile:c:\test\out.xps map_xps -infile:c:\test\billing.xps –changeformat:21,29.7,cm -outfile:c:\test\out.xps
Rotation de documents
Principe : effectuer une rotation sur un fichier XPS L’angle de rotation (en degré) est précisé sur la ligne de commande, le sens de rotation par défaut étant le sens trigonométrique (anti horaire). Sur le principe, tous les angles sont supportés, mais seuls les angles droits respectent la cohérence des dimensions de la page d’origine. D’où les valeurs supportées suivantes : -90 (rotation de 90° dans le sens horaire), 90, 180, 270. Notes : les valeurs -180 et -270 ne sont pas supportées (page blanche en sortie), il convient d’utiliser respectivement 180 et 90.
Exemple :
map_xps -infile:c:\test\fichier.xps -outfile:c:\test\fichier_90.xps –rotation:90 -toXPS
Fusion d’un fond de page sur un document existant
Principe : sur un document XPS existant, il est possible de venir rajouter un autre document en tant que fond de page, ou calque. Par exemple : ajouter un logo sur une facture existante n’en comportant pas. De plus, l’argument optionnel « -mergemode:XXX » permet de contrôler plus finement la manière dont est rajouté ce calque.
Exemple :
map_xps -infile:C:\test\billing.xps -merge:C:\tmp\logo.xps -mergemode:REPEATALL -outfile:C:\test\final.xps
L’argument « -merge:XXX » précise le nom du fichier à ajouter en tant que calque sur le document d’entrée. L’argument « -mergemode:XXX » précise la méthode d’ajout : REPEATALL : toutes les pages sont fusionnées, en répétant le calque jusqu’à la fin du fichier d’entrée. C’est le fonctionnement par défaut si rien n’est précisé.
Exemple :
En entrée : fichier d’entrée de 5 pages (identifiées par 1,2,3,4,5) et un calque de 2 pages (identifiées a,b)
En sortie : un fichier de 5 pages identifiées 1a,2b,3a,4b,5a
REPEATFULL : toutes les pages sont fusionnées, en répétant le calque tant qu’il peut être inséré entièrement.
Exemple : Avec les mêmes entrées que précédemment, on aura en sortie un fichier de 5 pages identifiées 1a,2b,3a,4b,5 (la dernière page n’étant donc pas modifiée).
ONCE : le calque n’est inséré qu’une seule fois, sur la ou les premières pages du fichier d’entrée.
Exemple : Avec les mêmes entrées que précédemment, on aura en sortie un fichier de 5 pages identifiées 1a,2b,3,4,5.
Variable d’environnement exportée
MAP_XPSFILE : contient le nom du fichier en cours d’extraction.