/
Client léger Harmony Wpf

Client léger Harmony Wpf

Présentation du client léger Harmony Wpf


Dans l'architecture 3 tiers d'Harmony, la couche Présentation et la couche Application métier sont séparées. Cela signifie que le processus qui exécute l'application Diva (XrtDiva.exe) est distinct du processus chargé de sa présentation (Xwpf.exe). Ces deux processus peuvent s'exécuter :

  • Soit sur le même ordinateur, auquel cas l'installation s'apparente à une installation de type "client lourd".

  • Soit sur deux ordinateurs différents. Le poste de l'utilisateur est de type "client léger". Il accède à des applications sur un ordinateur distant, appelé serveur d'applications. Le client léger Xwpf est un client riche car il permet d'effectuer bon nombre d'opérations gérées habituellement par un client lourd.


Processus de présentation Xwpf.exe
En version 6, le processus XrtDiva.exe assurait à la fois l'exécution des applications Diva et leur présentation à l'écran. En version 7, la partie présentation est exportée dans Xwpf.exe. Mais contrairement à XrtDiva.exe qui se basait sur la "vieille" interface Win32 du système d'exploitation Windows pour l'affichage des masques d'écran, Xwpf.exe utilise l'interface de Windows la plus récente, Wpf (Window Presentation Foundation).
Installation du client léger
Le client léger doit être installé sur chaque poste client. Il s'installe de manière très simple, en quelques clics.
Remarque importante : Si Harmony Power Foundation est déjà installé sur le poste client, il n'y a pas lieu d'y installer le client léger. En effet :

  • Le client léger fait partie intégrante de Harmony Power Foundation et peut être utilisé pour se connecter à un serveur d'applications.

  • L'installation du client léger entre en conflit avec celle du Runtime d'Harmony et risque d'empêcher celui-ci de fonctionner.

Profil de connexion
Un profil de connexion configure le mode de transport utilisé pour le dialogue entre les deux processus :

  • En mode local, les deux processus s'exécutent sur le même ordinateur et dialoguent entre eux sans passer par le réseau.

  • Lorsqu'ils sont situés sur deux ordinateurs distincts, le client léger et le serveur d'applications dialoguent entre eux :

 

  •  

    • Soit en mode Socket. Ce mode utilise le protocole TCP/IP et nécessite l'ouverture d'un port de communication TCP/IP entre le client et le serveur (le port numéro 1246 par défaut). Sur le serveur d'applications, le service DhsTerminalServer attend les connexions des postes clients. Chaque client établit une session avec le serveur. On utilisera ce mode lorsque les postes client se trouvent sur le réseau local ou sur un réseau privé virtuel (VPN).

    • Soit en mode Service Web. Ce mode utilise le protocole SOAP, protocole ouvert qui permet les connexions par le réseau public Internet. Le serveur Web de Microsoft IIS doit être installé sur le serveur d'applications. On utilisera ce mode pour la connexion des postes nomades.

 

  • Les 3 modes peuvent cohabiter sur un même site.

L'utilisateur choisit le profil adapté dans les Options Avancées de la boîte de dialogue de connexion au serveur.
Profil utilisateur
Un profil utilisateur enregistre, dans la base de registre du poste client, les paramètres de connexion au serveur d'applications, l'environnement de travail de l'utilisateur, ses préférences concernant par exemple le thème de couleurs, la couleur des polices par défaut, la langue d'affichage et d'impression. L'utilisateur peut définir plusieurs profils s'il est amené à utiliser Divalto dans différents contextes (connexion à une base réelle ou à une base de test, connexion à différents serveurs d'applications, connexion en réseau local ou à distance, connexion en différentes langues, etc.). Une simple sélection du profil adéquat dans la boîte de dialogue de connexion au serveur lui permet alors de retrouver tous les paramètres liés au contexte du moment.
Impressions
Le client léger prend en charge la gestion des impressions de manière très complète :

  • Choix de l'imprimante. L'imprimante peut se trouver :

 

  •  

    • Côté client. Il peut alors s'agir d'une imprimante branchée directement sur le poste client ou d'une imprimante partagée du réseau local accessible depuis le poste client.

    • Côté serveur. Cette option est particulièrement intéressante avec une installation en réseau local. Si le poste client ne demande pas l'aperçu avant impression, l'édition s'effectue directement sur l'imprimante du serveur, sans transiter par le poste client.


Par défaut, l'imprimante est l'imprimante par défaut de l'utilisateur Windows.

  • Format pour le spool. Le format pour le spool permet d'associer automatiquement certaines impressions à une imprimante particulière. Cette fonction est prise en charge par le client léger. On associera l'imprimante du client avec le format par l'utilitaire xDivaltoPrinters.

  • Aperçu avant impression.

  • Conversion automatique ou manuelle au format PDF. Le paramétrage de DivaltoViewer permet de convertir systématiquement l'aperçu avant impression au format PDF. Cette conversion peut également être réalisée, au cas par cas, grâce au bouton "PDF" de DivaltoViewer.


Utilitaires DivaltoViewer, XDivaltoPrinters et xDivaltoMajini
Les outils suivants font partie du package du client léger et sont installés sur le poste client : visualisation à l'écran des états imprimés (DivaltoViewer), paramétrage des impressions (xDivaltoPrinters) et modification de la base de registre (xDivaltoMajini).
Upload et Download de fichiers
L'utilisateur peut sélectionner une pièce jointe stockée sur son ordinateur pour l'archiver côté serveur. Cette opération peut être réalisée par un simple "Glisser - Déposer" (drag & drop) du fichier vers la fenêtre de l'application. Elle est également possible par la sélection du fichier dans la boîte de sélection des fichiers de Windows.
A l'inverse, pour afficher ou imprimer sur le poste client une pièce jointe stockée sur le serveur, il est nécessaire de la rapatrier sur le poste client.
Le client léger implémente pour cela les fonctionnalités :

  • Upload : Copie d'un fichier depuis le poste client vers le serveur.

  • Download : Copie d'un fichier du serveur vers le poste client.


Interface MAPI
L'interface de messagerie MAPI est reconduite sur le client léger, ce qui permet d'envoyer directement un mail au travers de la messagerie du poste client. MAPI permet également l'envoi de fax.
Interface Outlook
Divalto dispose d'une interface riche avec Microsoft Outlook :

  • Affichage de la fiche Tiers.

  • Génération d'un événement dans la CRM.

  • Accès au carnet d'adresses de Divalto CRM.

Toutes ces fonctionnalités sont disponibles à partir d'Outlook du poste client.

Interface OLE
Le client léger inclut l'interface OLE, ce qui permet à une application du serveur de directement interagir avec des serveurs OLE du poste client, notamment :

  • L'import et l'export vers Microsoft Excel.

  • Le publipostage avec Microsoft Word.


Interface YOffice
YOffice est une interface générique servant de couche d'abstraction pour accéder aux logiciels de bureautique Microsoft Office et Open Office. Cette interface est intégrée dans le client léger et permet donc :

  • L'import et l'export vers un tableur.

  • Le publipostage avec un traitement de textes.


Autres interfaces

  • Presse-papiers. La lecture et l'écriture du presse-papiers d'une application s'exécutant en mode client léger s'effectue dans le presse-papiers du poste client. Ceci permet par exemple l'export dans le presse-papiers depuis un Zoom et l'import dans une application locale. De même, les opérations de Copier / Coller de textes sont possibles.

  • Exécution d'un programme Windows. L'affichage d'une pièce jointe depuis le serveur non seulement provoque sa recopie sur le poste client mais déclenche également l'exécution de l'application associée. L'accès à un site Web depuis une fiche tiers ou la géolocalisation provoquent l'exécution du navigateur par défaut du poste client.


Options de connexion avancées


Lorsque l'utilisateur clique sur le bouton Options Avancées de la boîte de connexion, la boîte de dialogue suivante est ouverte :

Si l'utilisateur n'a pas les droits d'administration, le bouton est aussi affiché à droite du bouton Actualiser.

Les champs à saisir permettent de configurer la connexion au serveur, de sélectionner son environnement de travail, de choisir ses préférences (thème de couleurs, couleur des polices par défaut, langues d'affichage et d'impression) :

Profil

Ce multi-choix propose la liste des profils d'utilisation (plus un profil non identifié créé à l'installation).

  • Les changements apportés aux différents champs de cette boîte de dialogue s'appliquent au profil courant. Pour modifier un autre profil, il faut le sélectionner auparavant dans la liste.

  • Le bouton + permet de créer un nouveau profil. Les valeurs affectées initialement au nouveau profil sont celles du profil courant.

  • Le bouton x permet de supprimer le profil courant. Remarque : La suppression du profil par défaut n'est pas autorisée.

Définir comme profil par défaut

Cette option permet de spécifier que le profil courant devient le "profil par défaut".
Le profil par défaut est automatiquement proposé à chaque nouvelle connexion (à moins de lancer l'application par l'intermédiaire d'un raccourci imposant l'utilisation d'un profil particulier).

Code utilisateur Divalto Mot de passe

Code utilisateur et mot de passe Divalto.

Options d'identification

Cette option indique la « stratégie de sécurité » à employer pour Divalto :

  • Prendre l'identifiant Windows. Divalto considère que le code utilisateur spécifié lors de l'ouverture de la session Windows est aussi le code utilisateur Divalto. En conséquence, le code et le mot de passe Divalto ne doivent plus être saisis (l'identifiant Windows est proposé dans la boîte de connexion). L'affichage de la boîte de connexion peut être annulé avec l'option "Ne pas afficher la boîte de connexion". Dans ce cas, le mot de passe saisi par l'utilisateur à l'ouverture de la session Windows a été contrôlé par le système d'exploitation. Divalto considère donc qu'il s'agit d'une connexion approuvée et ne contrôle plus le mot de passe Divalto. (Cette option est équivalente à l'affectation de la valeur "!" à la variable d'environnement X_USER en version 6 d'Harmony.)

  • Interdire la sauvegarde du mode de passe. A chaque connexion à Divalto, l'utilisateur doit obligatoirement saisir son mot de passe dans la boîte de connexion. En conséquence, le mot de passe ne peut pas être renseigné ici et l'option "Ne pas afficher la boîte de connexion" n'est pas disponible.

  • Sauvegarder le mot de passe pour la session. Pour une session Windows donnée :

    • L'utilisateur doit obligatoirement saisir son mot de passe lors de sa première connexion à Divalto. Le mot de passe saisi est mémorisé pendant toute la durée de la session Windows.

    • La saisie du mot de passe ne sera plus nécessaire lors des connexions suivantes. Par contre, il devra être réintroduit à chaque nouvelle session Windows.

       

      En conséquence, le mot de passe ne peut pas être renseigné ici ; l'option "Ne pas afficher la boîte de connexion" reste disponible mais ne s'appliquera qu'à partir de la seconde connexion à Divalto pour la session Windows en cours.

  • Autoriser la sauvegarde le mode de passe. Le code et le mot de passe Divalto saisis ici sont sauvegardés au niveau du profil. Leur saisie n'est donc plus obligatoire dans la boîte de connexion. L'affichage de cette boîte peut être annulé avec l'option "Ne pas afficher la boîte de connexion".

  • Toujours demander l'identifiant. A chaque connexion à Divalto, l'utilisateur doit obligatoirement renseigner son code et son mot de passe dans la boîte de connexion. En conséquence, le code et le mot de passe Divalto ne peuvent plus être saisis ici et l'option "Ne pas afficher la boîte de connexion" n'est plus disponible.

  • Saisir un compte Windows. Demande de saisir un compte Windows lors de la connexion à Divalto. Cette option permet en particulier à plusieurs utilisateurs de se connecter avec leur propre compte Windows depuis une session Windows ouverte sous un autre compte. Remarque : Ce mode de connexion est équivalent à la connexion avec un client léger Html. Il n'est opérationnel qu'avec un profil de connexion par les sockets ou les services Web. Il n'est pas pris en compte pour un profil de connexion local.
    Remarque : La stratégie de sécurité ne peut être modifiée qu'en mode administrateur (voir le paragraphe "Passage en mode administrateur") ou si l'administrateur décide de la laisser libre au niveau du profil de connexion. Voir la rubrique Conseils de mise en place d'une stratégie de sécurité Divalto.

Ne pas afficher la boîte de connexion

Cette option permet de sauter la phase d'identification lors d'une connexion à Divalto (la fenêtre de connexion n'est plus affichée). Elle permet d'ouvrir directement l'application, sans répondre à aucune question préalable. A défaut, la fenêtre est systématiquement ouverte à chaque exécution d'une application. Remarque : Certaines options d'identification interdisent cette fonctionnalité. Pour rétablir l'affichage de la fenêtre (en particulier si l'on désire modifier des options), lancer l'application en conservant la touche Ctrl enfoncée jusqu'à l'apparition de la boîte (par exemple, par Ctrl + Double clic sur le raccourci de l'application sur le bureau).

Environnement Code langue écran Code langue imprimante

Ces options permettent de choisir un environnement de travail et une langue d'affichage et d'impression. Le bouton Réactualiser permet d'obtenir ou d'actualiser la liste des environnements et des langues depuis le serveur d'applications (voir le paragraphe "Bouton Réactualiser" en fin de rubrique).

Thème de couleurs

Thème de couleurs, à choisir dans la liste des thèmes proposés. Remarque : Il est possible que ce choix reste ineffectif si le thème est imposé au niveau du dossier (cette fonctionnalité permet d'identifier d'un coup d'œil le dossier sur lequel travaille l'utilisateur).

Polices par défaut de couleur noire

Les caractères des polices par défaut sont de couleur grise. Cette option permet de les remplacer par des caractères de couleur noire afin d'augmenter le contraste.

Code utilisateur et mot de passe Windows

Hors mode local, tout utilisateur doit s'identifier sur le serveur d'applications avec un code utilisateur et un mot de passe Windows. Le compte peut-être un compte local au serveur ou un compte du Domaine (dans ce cas, le code utilisateur s'écrit sous la forme User@Domaine ; par exemple : demo@divalto.dmz). Ce compte utilisateur sert exclusivement à l'impersonnation du processus sur le serveur d'applications et c'est généralement celui de l'utilisateur qui a ouvert la session Windows. Des options liées à ce compte sont stockées dans la base de registre du serveur. Il est donc déconseillé de connecter des utilisateurs différents sous le même compte, sous peine de confusion des options sauvegardées. Voir la rubrique Conseils de mise en place d'une stratégie de sécurité Divalto.

Profil de connexion

Ce multi-choix permet de définir les paramètres de la connexion à établir entre le poste client et le serveur d'applications. Un profil de connexion contient notamment le type de transport (Local, LAN, Service Web) et l'adresse du serveur d'applications. Le survol de cette zone avec la souris affiche le détail du profil de connexion choisi. Le bouton Réactualiser permet d'actualiser la liste des profils de connexion depuis le serveur d'applications (voir le paragraphe "Bouton Réactualiser" en fin de rubrique). Le bouton + permet de créer un profil de connexion. Une boîte de dialogue est alors ouverte, demandant de nommer la nouvelle connexion et de saisir ses paramètres (Type de transport par socket ou par service Web et Nom du serveur Web ou TCP/IP). Remarque : La création d'un profil de connexion n'est autorisée qu'en mode administrateur (voir le paragraphe "Passage en mode administrateur").

Programme à exécuter

Nom du programme à lancer sur le serveur d'applications. Par défaut (champ non renseigné), le programme est le menu de Divalto : Divalto.dhop. Remarque : La modification de ce champ n'est autorisée qu'en mode administrateur (voir le paragraphe "Passage en mode administrateur").

 

Bouton Réactualiser
Ce bouton permet de réactualiser la liste des profils de connexion, des environnements et des langues depuis un serveur d'applications. On rapatrie ainsi localement les dernières mises à jour effectuées sur le serveur. Attention : Ces listes sont conservées sur le poste client pour chaque profil de connexion. Ainsi, si différents profils de connexion pointent vers le même serveur d'applications, il conviendra de réactualiser la liste pour chaque profil.
Remarque :

  • Une mise à jour automatique est aussi effectuée lorsque l'utilisateur se reconnecte au serveur plus d'une heure après sa dernière connexion.

  • A destination de l'administrateur :

 

  •  

    • Ce bouton permet également de commander la mise à jour de la base de registre du serveur d'applications pour le profil de l'utilisateur Windows courant. Ainsi, des paramètres modifiés sur le serveur pour un autre compte utilisateur puis propagés seront immédiatement appliqués (par exemple, une nouvelle imprimante ajoutée sur le serveur). Là aussi, une mise à jour automatique a lieu lorsque l'utilisateur se reconnecte au serveur plus d'une heure après sa dernière connexion.

    • Sur un poste client, les profils de connexion ne sont jamais supprimés, même s'ils n'existent pas ou plus sur le serveur d'applications, cela pour éviter de perdre une connexion qui n'aurait pas été définie ou qui aurait été supprimée côté serveur. Côté client, la suppression des profils de connexion obsolètes doit donc être effectuée à la main. Les profils de connexion sont stockés dans la base de registre du poste client à l'adresse suivante : HKEY_CURRENT_USER\Software\Divalto\divalto.ini\ProfilConnexion


Passage en mode administrateur (bouton )
Lorsque l'utilisateur ne dispose pas du droit d'administration (voir la rubrique Profils de connexion), certaines options de connexion avancées ne sont pas disponibles. Un bouton en forme de cadenas est toutefois affiché pour les rendre accessibles. Pour passer en mode administrateur, cliquez sur ce bouton, renseignez le mot de passe et validez.

Conseils de mise en place d'une stratégie de sécurité Divalto


Pour obtenir une sécurité optimale lors de la connexion des utilisateurs, il est conseillé d'effectuer le paramétrage suivant :

  1. Paramétrage des Profils de connexion. Le choix "Paramétrage : Gestion des Profils de connexion en client léger" du menu Harmony permet de configurer les profils de connexion. Pour chacun des profils, sélectionnez l'option d'identification "Prendre l'identifiant Windows". Remarque : Ceci interdit aux utilisateurs de choisir eux-mêmes leur option d'identification dans la boîte des Options de connexion avancées.

  2. Paramétrage des Utilisateurs Harmony. Saisissez pour chaque utilisateur le nom du domaine où leur compte est enregistré.

  3. Paramétrage des Options de connexion avancées. Garnissez le champ Code utilisateur Windows de la boîte des options de connexion avancées avec le compte utilisateur du domaine (sous la forme User@Domaine - par exemple : demo@divalto.dmz).


Avec ce paramétrage, Divalto vérifie :

  1. Que l'utilisateur se connecte effectivement sur le domaine qui a été spécifié dans le fichier des utilisateurs Harmony. A défaut, une erreur 0x0078 est détectée.

  2. Que le code utilisateur Windows spécifié dans les options de connexion avancées et utilisé pour l'impersonnation du processus sur le serveur d'applications inclut un nom de domaine et que ce nom est identique à celui indiqué dans le fichier des utilisateurs Harmony. A défaut, une erreur 0x0079 est détectée.

Raccourcis vers l'application


Un raccourci est un lien vers un élément (tel qu'un fichier, un dossier ou un programme) de l'ordinateur. Des raccourcis peuvent être créés et placés à un endroit approprié, par exemple sur le Bureau ou dans la section Favoris du volet de navigation (le volet gauche) d'un dossier, pour pouvoir accéder facilement à l'élément avec lequel le raccourci établit un lien. Les raccourcis se distinguent du fichier d'origine grâce à la flèche qui apparaît sur l'icône.
Le raccourci permettant de lancer une application depuis le client léger Divalto est le suivant (exemple où le dossier Divalto se trouve sur le disque C) :

Raccourci vers l'application en précisant le profil utilisateur
Si l'on est amené à utiliser Divalto dans différents contextes et donc à employer plusieurs profils d'utilisation, il peut être intéressant de créer autant de raccourcis que de profils. Avec l'option "Toujours utiliser ce profil", cela permet d'ouvrir directement la fenêtre de l'application, sans répondre à aucune question préalable, quelque soit le contexte d'exécution.
Exemple :
Un commercial a besoin d'une connexion au réseau local d'entreprise lorsqu'il travaille au sein de sa société et d'une connexion par service Web lorsqu'il est en déplacement. Sur son poste, après avoir défini les profils utilisateur "Entreprise" et "Deplacement", il crée deux raccourcis (par exemple sur son Bureau) qui lui permettront de se connecter automatiquement au serveur d'applications de sa société, en utilisant l'un ou l'autre profil selon son lieu de travail.
Pour ce faire, il faut ajouter au nom de l'exécutable Xwpf.exe l'option –profil suivie du nom du profil.
Exemples :
C:\divalto\sys\Xwpf.exe -profil Entreprise C:\divalto\sys\Xwpf.exe -profil Deplacement

Paramètres avancés d'un raccourci vers l'application
D'autres paramètres peuvent être ajoutés au raccourci :

  • -hide Demande de ne pas afficher la boîte de connexion à Divalto.

  • -program "programme" Nom du programme Diva à exécuter.

  • -userharmony "util" Code utilisateur Harmony.

  • -pwharmonyclear "mot_de_passe" Mot de passe Harmony.

  • -harmony_param "params" Passage d'une chaîne de paramètres "utilisateur". Le programme appelé pourra récupérer le contenu de cette chaîne par la fonction GetEnv ("harmony_param"). Exemple : -harmony_param "param1=val1;param2=val2" Vous pouvez faire figurer dans la chaîne des mots clés Windows ou des variables d'environnement locales en les encadrant du caractère %. Ces mots clés ou variables seront automatiquement remplacés par leur valeur respective. Exemples : -harmony_param "username=%USERNAME%;domain=%USERDOMAIN%" permettra de récupérer le nom et le domaine de l'utilisateur. -harmony_param "%X_USER%" permettra de récupérer la valeur de la variable d'environnement X_USER.


Outils du client léger Harmony


En plus de Xwpf, le client léger Harmony comporte quelques outils qui peuvent s'exécuter soit en mode local, soit en mode connecté au serveur d'applications (les menus de ces outils comportent des choix permettant de se connecter ou déconnecter d'un serveur).
Lors du paramétrage avec ces outils, on prendra soin de vérifier le mode d'exécution car en mode local, les paramètres sont stockés dans la base de registre du poste local alors qu'en mode connecté, ils sont stockés sur le serveur d'applications. Le mode courant (local ou connecté) est rappelé dans le bandeau de la fenêtre.
Remarque : Lorsque le client léger s'exécute sur le serveur d'applications, le mode affiché dans le bandeau est "Local" mais dans ce cas, les paramètres locaux ou serveur sont évidemment les mêmes.
DivaltoViewer
DivaltoViewer gère l'aperçu avant impression. Il peut fonctionner en mode local (par exemple, pour visualiser un fichier d'impression .dhvw stocké sur le poste local) ou en mode connecté (en liaison avec le serveur d'applications).
Lors d'une impression avec aperçu, DivaltoViewer est lancé à l'initiative du serveur d'applications et fonctionne donc en mode connecté.
xDivaltoPrinters
xDivaltoPrinters permet de paramétrer les imprimantes.
Signalons qu'un état, même destiné à être imprimé côté client, est toujours généré sur le serveur d'applications.
xDivaltoMajini
xDivaltoMajini permet de consulter ou de mettre à jour la base de registre pour les sections qui concernent Harmony. En mode local, il s'agit de la base de registre du poste client alors qu'en mode connecté, il s'agit de celle du serveur.