Paramétrage de l'agent d'impression

Généralités sur l’agent d’impression

L'agent d'impression est un outil visant (initialement) à compenser certaines limitations du client html : celui-ci, "bridé" par le navigateur, ne permet pas aux programmes diva d'accéder au matériel de la machine locale, et en particulier aux imprimantes.
En temps normal, lors d'une impression, le client html commandera la génération d'un document PDF sur le serveur, et en proposera le téléchargement, ce qui, entre autres, requiert une action utilisateur pour chaque document.
Ce fonctionnement convient aux clients nomades, mais peut avoirs ses limites (impression des payes par exemple) pour les utilisateurs d'un site cloud, ou les utilisateurs d'un site pour lequel seul le client html a été choisit.
Pour ces cas-ci, l'agent d'impression est mis à disposition.
Le principe est le suivant :

  • après activation de ce mode, les éditions à imprimer sont centralisées sous forme de documents .dhvw dans un répertoire sur le serveur.

  • l'agent d'impression en lui-même est un programme exécuté par un client WPF sur un poste dédié du site (physique) concerné et qui scrute le dossier où sont centralisés les éditions générées par les utilisateurs du site. Cet agent déclenche les impressions sur l'imprimante paramétrée puis efface les documents du répertoire après impression.

Paramétrage d'un format pour le spool en mode "Agent d'impression"

Il faut créer ou modifier dans xDivaltoPrinters un format pour le spool (comme indiqué dans la documentation xDivaltoPrinters) et cocher la case "Agent Impression".

 

Un sous-répertoire peut être précisé et sera notamment indispensable si plusieurs sites physiques d'une même entité sont desservis en mode "Agent d'impression".
Ce format pour le spool doit être propagé pour tout les utilisateurs du site concerné.
Lorsque ce format est utilisé, les impressions sont alors centralisées sur le serveur d'application dans le répertoire
C:\divalto\DivaltoPrintAgent\Local\Tmp
Pour chaque impression un fichier .dhvw et un aperçu (image du même non avec l'extension .PNG) sont stockées.

Mise en oeuvre de l'agent d'impression local

Sur le poste local qui sert d’agent d’impression, il faut toujours l’indiquer via la coche des paramètres locaux.

 

Sur un poste dédié de chaque site physique qui doit fonctionner en mode "Agent d'impression", il faut lancer le DhsDivaltoAgentImp.exe en tant qu’administrateur pour installer l’agent.

 

Dans le champ Compte et mode de passe , il faut indiquer un compte windows et son mot de passe. Il faut créer un compte windows qui ne servira que pour l’agent d’impression et si possible qu il soit dans Active Directory. Dans tous les cas , il faut vérifier que ce compte ai le droit d’utiliser les imprimantes du site et le réseau interne du site.

Il faut aussi que ce compte ai le droit de s’exécuté en mode session. Si ce n’est pas le cas , la boite de dialogue va ajouter ces droits dans ce compte.

Attention, si c’est un compte Active Directory , il faut lancer (run as) avec les droits de l’administrateur de active directory pour que l'agent d’impression puisse ces droits.

Si vous avez un problème, apres avoir crée le service de l’agent d’impression, il faut aller dans la gestion des services et on peut là aussi mettre ce compte et son mot de passe.

Cella se passe dans le gestionnaire de services, clic droit sur la ligne de l’agent d’impression, onglet connexion.

 

 

 

Installation du service de l’agent d’impression.


De plus, il faudra, sur ce poste uniquement, paramétrer via xDivaltoPrinters un format pour le spool du même nom que celui utilisé par les utilisateurs (cf paragraphe 1.), mais qui référencera l'imprimante réelle sur laquelle doivent sortir les impressions.
C'est ce programme qui va scruter le répertoire sur lequel les impressions du site seront centralisées.
Pour chaque document qui s'y trouve, l'agent va :

  • afficher l'aperçu du document en cours de traitement,

  • lancer DivaltoViewer en mode "impression directe" pour ce document,

  • DivaltoViewer va détecter pour le format pour le spool stocké dans le document ".dhvw" lui-même, et utilisera le format pour le spool du même nom (celui que l'on a créé spécifiquement pour le poste dédié à l'agent d'impression) pour lancer l'impression sur l'imprimante réelle

Persistance des documents et maintient de l'agent en cas d'erreur

Par défaut les documents sont supprimés définitivement après n jours.

Cette valeur est indiquée dans les paramètres de l’agent d’impression, ainsi que la durée de synchonisation

Paramétrage du service de l’agent d’impression, mode redémarrage en cas d’arrêt après un erreur grave

Le service d’agent d’impression est paramétré comme ceci pour faire du redémarrage automatique en cas d’erreur grave.


Choix de l'emplacement de stockage des documents centralisés

Par défaut, les documents sont stockés dans un répertoire construit comme suit :
"CheminUL1\DivaltoPrintAgent\Local\Tmp" et "CheminUL1\DivaltoPrintAgent\Local\Printed"
Ce qui donne C:\divalto\DivaltoPrintAgent\Local\Tmp et C:\divalto\DivaltoPrintAgent\Local\Printed dans le cas d'une installation par défaut.
Ces chemins peuvent être changé par l'ajout d'une clef DirectoryOfEditions dans le chapitre "Local machine\SOFTWARE\Divalto\Divalto.ini\system" du registre avec pour valeur le chemin souhaité.

Impression en mode caractères

Pour l'impression en mode caractères il faut utiliser le chapitre Printer (et non GraphPrinter) du format pour le spool.
Pour le poste dédié à l'agent d'impression il faut apporter quelques attentions particulières :

  • il faut que le fichier FIHxxxx soit correctement paramétré en fonction de l'imprimante réelle qui devra imprimer les pages.
    Comme pour les impressions en mode graphique, le nom du format pour le spool utilisé par les clients pour générer les documents doit correspondre au format pour le spool du poste éxécutant l'agent d'impression (lequel référence l'imprimante réelle).

Utilisation sur plusieurs sites physiques

Dans le cas où plusieurs sites physiques d'une même entité, et dépendant d'un même serveur d'application, doivent chacun être desservis en mode "Agent d'impression", il convient de faire les ajustements suivants :

  • Il faut créer un format pour le spool dédié pour chaque site en précisant un sous-répertoire (voir paragraphe 1.)

  • Il faut disposer d'un poste "Agent d'impression" dédié à chaque site physique (et paramétré en cohérence : spool correspondant au pool dédié au site et référençant la bonne imprimante réelle, cf. paragraphe 2.)
    Exemple : une entreprise dispose d'un site à Strasbourg et d'un second site à Entzheim : on crée deux formats pour le spool

Le format pour le spool adéquat sera propagé aux utilisateurs en fonction de leur site respectif et un poste dédié à l'agent d'impression sera implanté sur chacun des deux site.

Il faudra modifier le paramétrage des agent d’impression pour lui dire quel est le répertoire à lire

  • sur le premier site, il faudra indiquer le nom du sous répertoire

 

  • et sur le deuxième site, il faudra lui indiquer l’autre nom du sous répertoire