Installation d'Harmony
Installation d'Harmony
L'architecture 3 tiers d'Harmony distingue trois composants : le serveur d'applications, le client léger et le serveur de données.
On sera donc amené à installer, selon l'organisation adoptée sur le site :
Attention : Les versions 2016 et ultérieures d'Harmony nécessitent le Framework .Net 4.8.
Vérification des produits disponibles
L'assistant d'installation d'Harmony permet d'interroger un serveur de Divalto pour obtenir la liste des masters et des correctifs disponibles pour la version en cours d'installation.
Si la version installée n'est pas à jour, un simple clic sur une URL permet de télécharger la dernière version ou ses correctifs.
Attention :
Cette interrogation nécessite une connexion internet car elle invoque un service Web hébergé par un serveur de Divalto. Elle peut toutefois être désactivée en décochant la case Contrôler la version du master s'il n'y a pas de connexion internet disponible.
Vous trouverez la description détaillée de cette fonctionnalité dans le livre Téléchargement des masters et des correctifs Divalto.
Installation d'un serveur d'applications
Les opérations à réaliser pour installer un serveur d'applications (ou un poste "client lourd") dépendent de la configuration adoptée.
Les rubriques suivantes décrivent successivement :
Voir aussi :
Installation des fichiers d'aides
Installation d'un serveur multi-bases
Installation multi-environnement
Installation sous Windows Terminal Serveur
Profils de connexion
Profils utilisateur
Installation de Harmony Power Foundation
Sur le serveur d'applications, exécutez le programme InstallDivalto.exe. Ce programme lance l'Assistant d'installation de Divalto. Après avoir accepté les termes du contrat de licence, sélectionnez le produit "Harmony Power Foundation".
Entrez ensuite les renseignements demandés :
Installer Divalto sur | Unité disque Windows où copier les programmes et les fichiers (c: par défaut). |
Numéro de site et Code d'accès | Vous trouverez ces informations sur le Certificat de licences Divalto qui vous a été délivré par le service Commandes de Divalto. |
Nom de la base ERP Divalto | Nom de la base de données SQL à laquelle accéderont vos applications Divalto (uniquement en cas d'installation de l'erp). |
Créer un environnement | Cochez cette case pour que l'installateur crée un environnement. Cela permet par exemple de créer un environnement de production et des environnements de test ou de formation. Remarque : La création d'un environnement est systématique sur un site distributeur. |
Nom du serveur de licences | Le cas échéant, spécifiez ici le nom du Serveur de licences Divalto. Si l'ordinateur où s'effectue l'installation est lui-même serveur de licences, laissez cette zone à espace. Voir le livre Licence d'utilisation d'Harmony. |
Lorsque l'installation proprement dite se termine, l'Assistant appelle l'utilitaire de gestion des licences. Pour connaître les détails de mise en place des licences, reportez-vous au livre Licence d'utilisation d'Harmony.
Remarque :
Le client léger fait partie intégrante du produit "Harmony Power Foundation". En conséquence, il n'y a pas lieu de l'installer pour un fonctionnement en mode local.
Les spécificités de l'installation sous Windows Terminal Serveur Edition (TSE) sont mentionnées au chapitre Installation sous Windows Terminal Serveur.
Opérations réalisées par l'installateur
Le programme d'installation de "Harmony Power Foundation" réalise en particulier les opérations suivantes :
Les fichiers et les programmes d'Harmony sont copiés dans le dossier principal x:\divalto. En particulier, les programmes et fichiers "système" (exécutables, utilitaires, fichiers paramètres, fichiers d'aide système, etc.) sont copiés dans le sous-dossier x:\divalto\sys. Les fichiers de configuration Fconfig et Xlogf (qui contiennent respectivement des informations relatives à la configuration et aux utilisateurs d'Harmony) ne sont pas modifiés s'ils existent déjà : l'installation d'une nouvelle version d'Harmony ne casse donc pas les paramètres existants.
Des sections Divalto.ini sont créées dans la base de registre. En cas de réinstallation d'Harmony, les valeurs existantes ne sont pas modifiées.
Le groupe "Divalto" est créé dans le gestionnaire de programmes.
Un raccourci vers le programme DhSession.exe est placé dans le groupe de démarrage. Voir aussi la rubrique Installation d'Harmony sous plusieurs comptes / profils utilisateur.
Le fichier Tdivalto.fon est copié dans le répertoire système de Windows. Il contient la police de caractères "Terminal" utilisée par Harmony en mode caractères. Le fichier Win.ini est modifié pour inclure cette fonte de caractères.
Le programme d'installation de licence est lancé.
Installation du serveur en mode Socket
On privilégiera le mode Socket pour des connexions dans un réseau local d'entreprise ou dans le cadre d'un réseau virtuel privé, réseaux pour lesquels l'ouverture d'un port de communication particulier n'est généralement pas un problème. En effet :
Le protocole de communication (TCP/IP) est plus simple que les Services Web.
Il ne nécessite pas la mise en œuvre d'un serveur IIS.
Pour les connexions par sockets TCP/IP, le service DhsTerminalServer doit être démarré sur le serveur d'applications. C'est ce service qui attend les connexions des postes client :
Ce type de connexion nécessite l'ouverture d'un port de communication TCP/IP entre le client et le serveur au niveau des Firewalls. Par défaut, le serveur écoute le port 1246.
Paramétrage du port
Si le port 1246 n'est pas disponible ou ne convient pas, il peut être changé dans la base de registre globale du serveur (HKEY_LOCAL_MACHINE), par l'utilitaire XDivaltoMajini. Le choix de la section de la base de registre à traiter s'effectue à partir du menu « Lecture » de cet utilitaire.
Le port du client doit évidemment être en adéquation avec celui du serveur : le paramétrage du port coté client se trouve dans le profil de connexion.
Redémarrage automatique du service DhsTerminalServer en cas de défaillance
Le gestionnaire des services de Windows permet de spécifier le comportement d'un service en cas de défaillance (onglet Récupération de la boîte des propriétés du service). Les options de redémarrage automatique peuvent être appliquées au service DhsTerminalServer pour autoriser ce dernier à redémarrer s'il s'avère défaillant :
Installation du serveur en mode Service Web
On privilégiera le mode Service Web pour des connexions de postes nomades, l'accès depuis Internet n'autorisant pas le dialogue sur des ports de communication « privés ».
Ce type de connexion nécessite la présence du service IIS de Microsoft sur le serveur d'applications (Cf. rubrique Installation du serveur Web IIS).
Pour qu'une page asmx du serveur soit accessible depuis le Web, il faut créer une application IIS 32 bits pointant le répertoire contenant cette page. On crée ainsi un répertoire virtuel, alias d'un chemin dans l'arborescence des fichiers du serveur. Exemple :
Pour accéder au serveur via l'URL http://www.monserveur.fr/LCWebService/DHTerminalServer.asmx, créez sur le serveur une application IIS nommée "LCWebService" et pointant le répertoire physique contenant la page DHTerminalServer.asmx.
Remarque importante :
On utilisera de préférence le répertoire x:\Divalto\Internet\LCWebService.
Ce répertoire contient en effet le modèle vers lequel il faut faire pointer le chemin d'accès physique de l'application IIS. Le répertoire physique peut être changé, mais dans ce cas, il ne faudra pas oublier de reprendre le modèle livré par Divalto en cas de mise à jour dans une version future d'Harmony.
Tous les paramétrages qui suivent concernant IIS s'effectuent par le Gestionnaire des Services Internet (IIS), accessible depuis le panneau de configuration.
Pool d'applications IIS
Une application IIS appartient toujours à un pool d'applications. Il est possible de créer son propre pool d'applications ou utiliser l'un des pools proposés par Windows :
Configurer le pool d'applications
Cliquez sur la ligne Pools d'applications dans l'arbre des Connexions. Dans la fenêtre Pools d'applications (à droite de l'écran), sélectionnez le pool choisi pour votre application puis éditez ses paramètres avancés. Les options suivantes sont impératives :
Activer les applications 32 bits (si votre système Windows est un système 64 bits) : True.
Mode Pipeline géré : Integrated (Intégré).
Version du .Net Framework : 4.0 minimum.
Identité : LocalSystem.
Créer l'application IIS
Développez la branche de l'arbre correspondant au site Web souhaité (remarque : sous certains systèmes, il ne peut exister qu'un seul site Web, nommé "Default Web Site" - "Site Web par défaut").
Cliquez avec le bouton droit de la souris sur le nom du site et sélectionnez le choix du menu "Ajouter une application..." :
Attention : à partir de Windows Vista, il est impératif de créer une "Application" et non pas un "Répertoire virtuel". Si vous avez créé par erreur un répertoire virtuel, vous pouvez toutefois le convertir en application (clic droit sur le répertoire, choix "Convertir en application").
Entrez le nom de l'alias (LCWebService dans notre exemple), pointez le répertoire physique (x:\Divalto\Internet\LCWebService en standard) qui contiendra la page asmx (DHTerminalServer.asmx en standard) et spécifiez le pool d'applications choisi :
Si vous affichez les paramètres avancés de l'application, vous obtenez alors :
Mise en oeuvre d'une compression des trames
Voir la rubrique Compression des trames pour un client léger Web.
Tests de premier niveau
Avant de procéder à un essai complet du client léger Divalto, vous pouvez déjà vous assurer que le paramétrage de base de l'application IIS est correct.
Depuis un navigateur exécuté sur votre serveur, connectez-vous à la page asmx configurée pour le client léger. Pour cela, entrez l'url http://localhost/lcwebservice/dhterminalserver.asmx (exemple de paramétrage donné plus haut).
Vous devez obtenir une page Web du style :
Remarque : Cette page peut apparaître après un délai relativement long s'il s'agit de la première tentative de connexion à IIS.
En cas d'erreur : L'affichage de cette page est une condition sine qua non du bon fonctionnement du client léger en mode Service Web. Tant qu'elle n'apparaît pas, il est donc inutile de tenter de modifier le paramétrage "Divalto" du client léger.
Bien entendu, ce premier test peut être fait également depuis un navigateur exécuté sur un poste client (en remplaçant localhost par l'adresse du serveur, par exemple http://www.monserveur.fr ).
Droits d'accès
En effectuant le test précédent, l'erreur suivante apparaît lorsque l'utilisateur n'a pas les droits pour accéder à la page asmx :
Remarque : En se connectant en client léger Divalto, on obtient cette erreur :
Il faut alors en supplément donner les droits de lecture et d'exécution aux utilisateurs autorisés (éventuellement à "Tout le monde") sur tout le répertoire physique pointé par l'application IIS (x:\Divalto\Internet\LCWebService en standard). Les droits se définissent en cliquant droit sur le nom du répertoire dans l'explorateur de fichiers de Windows et en sélectionnant le choix "Propriétés" du menu surgissant. Sélectionnez alors l'onglet "Sécurité" et cliquez sur le bouton "Modifier" :
Diffusion du client léger
La mise en œuvre d'un serveur IIS est aussi une opportunité pour une diffusion simple et conviviale du client léger.
Configuration du service DhsDivaAgent
Les applications Diva lancées depuis le client léger sont exécutées, sur le serveur d'applications, par le service DhsDivaAgent (qui doit donc être démarré sur le serveur) :
Avant d'exécuter un programme, ce service s'impersonne avec le compte de l'utilisateur Windows du client. Le programme Diva s'exécute donc sous ce compte utilisateur et en hérite les droits. C'est pourquoi le compte Windows et son mot de passe doivent être renseignés dans les options avancées de connexion. Le compte peut-être un compte local au serveur ou un compte du Domaine (dans ce cas, on écrit User@Domaine) :
Attention : Pour réaliser l'opération d'impersonnation, le service DhsDivaAgent doit être autorisé à interagir avec le bureau :
Installation du client léger Wpf
Le "Client léger Harmony" est le processus chargé de la présentation des applications Harmony.
Nous nous intéressons ici au cas où ce processus s'exécute sur un ordinateur distinct du serveur d'applications.
ATTENTION : Si Harmony Power Foundation est déjà installé sur le poste client, il n'y a pas lieu d'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.
Pour utiliser le mode client léger Wpf, installez le client léger sur le poste client, par un installateur de type « Microsoft Installer » (.msi). Cette installation est décrite dans le livre Installation du client léger (Msi).
Remarque :
Le lancement direct du client léger depuis un navigateur Internet par la technologie Xbap est obsolète avec l'introduction du client léger Html5. En conséquence, le connecteur XBAP n'est plus diffusé à partir de la version 2016.
Voir aussi :[ Installation multi-environnement|#Top_of_Installation_multi_enviro]
Installation du connecteur Divalto pour Outlook sur un poste client léger
Installation du client léger (Msi)
Un installateur simplifié du type « Microsoft Installer » (.msi) permet, en quelques clics, d'installer le client léger Harmony sur un poste client.
De plus, le poste client est directement utilisable si l'installateur crée un profil de connexion par défaut, configuré de manière à autoriser une connexion immédiate au serveur d'applications.
Les rubriques suivantes décrivent successivement :
Déploiement du client léger (Msi)
Vous pouvez le distribuer en le mettant à disposition sur un serveur d'entreprise. Cette mise à disposition peut être faite :
Sur un répertoire partagé d'un serveur du réseau local.
Sur un serveur Web.
Après installation du produit "Harmony Power Foundation" sur le serveur d'applications, le répertoire x:\Divalto\Internet\LCWebService contient, en plus de la page DHTerminalServer.asmx servant à la connexion des postes clients en mode Service Web et du fichier d'installation DivaltoSetup.msi du client léger Harmony :
Le fichier d'installation du connecteur Outlook (ConnecteurDivaltoPourOulook2010.vsto ou DivaltoLoadFicheOutlook2010.vsto selon la version).
Une page d'accueil modèle (index.html) proposant le téléchargement du connecteur et du client léger :
Un lien vers le fichier DivaltoSetup.msi personnalisé ou vers la page d'accueil du téléchargement peut-être envoyé aux utilisateurs qui chargeront le client en quelques clics.
Installation du client léger sur un poste client (Msi)
Le client léger doit être installé sur chaque poste client.
Après que l'utilisateur clique sur le lien « Installer » de la page Web que vous aurez mise à sa disposition, l'installation se déroule de la manière suivante :
La fenêtre de bienvenue s’affiche en premier :
Cliquer simplement sur Suivant. Lire les conditions générales, cocher « J'accepte » et cliquer à nouveau sur Suivant :
Changer éventuellement le dossier d'installation et la portée de l'installation. Cliquer sur Suivant :
Pour installer divalto pour le cloud, cocher la case correspondante (non par défaut) :
Pour terminer, cliquer sur “Installer” dans l'écran de confirmation :
Une fenêtre avec une barre d'avancement apparaît pour indiquer le bon déroulement de l'installation.
Pour finir, cliquer sur Terminer. L'installation est achevée et le client léger Harmony prêt à l'emploi.
Installation du .msi en ligne de commande
L'installation peut être lancée en ligne de commande et, dans ce cas, il est possible d'utiliser les propriétés publiques :
INSTALLDIR Spécifie le répertoire d'installation du client léger.
CLOUDINSTALL La valeur true spécifie il s'agit d'une installation spécifique au Cloud Divalto (false par défaut).
Exemple :
msiexec.exe /i "C:\DivaltoSetup.msi" /qn INSTALLDIR="C:\Divalto" CLOUDINSTALL="true"
Mise à jour du client léger (Msi) ARCHIVE - CETTE FONCTIONNALITE EST RETIREE
Lorsque la version du serveur change, il faut installer sur les postes clients la version correspondante du client léger. Vous pouvez configurer le serveur d'applications pour qu'un client léger qui se connecte au serveur avec une ancienne version non compatible se voit automatiquement proposer d'installer la nouvelle version :
Appelez l'utilitaire xDivaltoMajini.
Au menu "Lecture", sélectionnez le choix "Dans la base de registre globale à l'ordinateur (HKEY_LOCAL_MACHINE)".
Si le chapitre ClientLeger n'existe pas, cliquez droit sur la ligne affichant "divalto.ini", sélectionnez le choix "Ajouter un chapitre" et créez le chapitre "ClientLeger". Sinon, cliquez droit sur la ligne affichant "ClientLeger" et sélectionnez le choix "Ajouter une valeur".
Créer la valeur "UrlTelechargement" et affectez-lui le chemin d'accès au fichier DivaltoSetup.msi correspondant à la nouvelle version du client léger. Par exemple : \\ServeurLCWebService\DivaltoSetup.msi (où LCWebService est le nom d'un partage pointant sur /Divalto/Internet/LCWebService).
Installation du client léger (Divalto Web Access)
Avant l'introduction du client léger HTML5, la connexion à un serveur Divalto depuis un navigateur utilisait la technologie XBAP. Cette technologie permettait, de manière transparente pour l'utilisateur, d'installer un client Wpf sur le poste client.
Cette technologie est aujourd'hui obsolète et le connecteur XBAP n'est plus diffusé à partir de la version 2016.
Installation d'un serveur de données (ou d'un poste autonome)
Les rubriques suivantes décrivent successivement :
Voir aussi :
Complément d'installation d'un poste client lourd
RecordSQL et DataBase
Installation du serveur SQL
Avant d'installer l'ERP Divalto infinity, il faut installer le logiciel de gestion de la base de données cible sur le serveur de données et que celle-ci soit opérationnelle. Il faut également créer une base de données dans laquelle seront stockées les tables de l'ERP et éventuellement une base de données pour les tables de Divalto BI. Le nom de la base, sensible à la casse, doit impérativement être en majuscules.
Attention : Consultez les dernières rubriques de ce livre pour prendre connaissance des particularités de chaque base de données. Par exemple, consultez la rubrique "Base de données Microsoft Sql Server - Particularités" si vous installez l'ERP sur le serveur SQL de Windows.
Maintenance et évolution des bases
Ce point est assuré par l'utilitaire XPSQL : voir le livre consacré à Xlan SQL.
Installation du serveur de données
Sur un serveur de données, installez Harmony Power Foundation et l'ERP Divalto. Le cas échéant, installez aussi le Connecteur Divalto pour Outlook.
L'installation de l'ERP va vous permettre de configurer le connecteur SQL. En version 7, l'accès aux données s'effectue par deux canaux :
Le connecteur SQL concerne tous les accès par les méthodes des "RecordSQL" (en particulier, les Zooms SQL utilisent ce canal).
Le serveur Xlan concerne tous les accès par les fonctions Diva de gestion des fichiers :
Accès aux fichiers séquentiels-indexés.
Accès aux bases SQL, par le driver ODBC de la base de données cible.
Remarque :
La configuration du serveur Xlan fait l'objet de deux livres dans ce manuel :
Le livre intitulé Réseau Xlan traite de la configuration proprement dite du service Xlan.
Le livre intitulé Xlan SQL traite plus particulièrement des accès aux bases de données SQL.
Les données de l'ERP, avec la visite guidée, sont livrées dans un fichier de base de données au format .mdf. L'installateur demande le nom de la base et joint le fichier livré à la base de données du serveur SQL.
L'installation de l'ERP Divalto diffère selon qu'elle s'applique à une version de démonstration ou à une version pour un site client :
Installation d'une version de démonstration réservée aux partenaires. L'installateur crée ici un environnement pour chaque version installée. Ainsi le partenaire aura à sa disposition les différentes versions et y accèdera très simplement en changeant d'environnement. Chacune des versions est installée dans un sous-répertoire de /Divalto, qui porte le nom de l'environnement associé (par exemple ERP206 pour la version 7.3). Ce sous-répertoire contient les dictionnaires de données, le fichier paramètre Fhsql, la base de données, ainsi que des sous-dossiers Documentation, Fichiers, Objets, Sources et WebAide.
Installation d'une version pour le site d'un client. Pour une version client, l'installateur ne crée pas d'environnement.
Connecteur SQL
Le connecteur SQL accède à la base de données par une connexion ADO.net.
L'installateur de l'ERP demande les paramètres suivants pour créer les tables et copier les données dans la base SQL :
Nom de la base | Il s'agit du nom de la base de données (par exemple ERPDivalto). Attention : Cette base doit être créée au préalable avec le gestionnaire de la base de données cible. |
Nom du serveur SQL | Il s'agit du nom NETBIOS du serveur SQL. L'installateur ajoute une entrée de type "Serveur XLAN" dans la table des serveurs. |
Nom de l'instance | S'il y a plusieurs instances de Microsoft SQL serveur sur le serveur de données, on indiquera ici le nom de l'instance. Attention : Avec la version SQL Express de Microsoft SQL server, il faut impérativement renseigner ce nom d'instance (SQLEXPRESS par défaut). |
Chaîne de connexion ODBC | Il convient ici de sélectionner la source de données ODBC permettant à Xlan d'accéder à la base. La sélection renvoie la chaîne de connexion ODBC. Voir un exemple (concernant Microsoft SQL Server) à la rubrique "Base de données Microsoft Sql Server - Particularités". |
Chaîne de connexion ADO | Utilisée par le connecteur SQL, elle est calculée automatiquement à partir des paramètres introduits précédemment, mais peut être adaptée en cas de nécessité. |
Nom du serveur de réservation | Il s'agit du nom du serveur Xlan (généralement, c'est le même que le serveur SQL). Les programmes réservent des entités par les fonctions FSHARE du langage DIVA, fonctions également implémentées au niveau du connecteur SQL. |
Création des tables | Ces deux options permettent respectivement :
|
Nombre de décimales | Ce cadre concerne les données numériques à "décimales variables". Harmony permet de définir des valeurs numériques dont le nombre de décimales est variable. Par exemple, les montants dans certains pays s'expriment avec trois décimales, en gestion les quantités peuvent s'exprimer avec 0, 1, 2 ou n décimales selon la nature de l'objet.
|
Emplacement du fichier des connexions
L'installateur SQL crée le fichier connexions.xml dans le répertoire /Divalto/Sys s'il n'existe pas. Si le fichier de connexions existe déjà, l'installateur n'y touche pas mais crée un fichier de connexions portant le nom de la base de données avec l'extension .xml (par exemple ErpDivalto.xml) dans le sous-répertoire /Divalto/BasedeDonnees (par exemple /Divalto/ErpDivalto/ErpDivalto.xml).
La personne qui installe pourra ensuite copier/coller la connexion correspondante dans le fichier des connexions (/Divalto/Sys/connexions.xml).
Fichier paramètres des connexions
Le fichier paramètre Connexions.xml est utilisé par le connecteur SQL.
Il contient une liste de connexions vers les bases de données. Pour chaque connexion, on définit :
Le type de la base (Microsoft SQL Server, Oracle, IBM DB2 - consultez le tableau des version maintenues pour vérifier la compatibilité).
Le nom de la base de données.
La chaîne de connexion Ado.net à la base.
Le nom du serveur de réservation.
Chaque connexion est identifiée par un nom (attribut "nom" de la balise connexion).
La connexion « default » est utilisée par défaut.
Ce fichier doit être stocké dans le répertoire du fichier des utilisateurs (clé ServeurXLOGF du chapitre [System] de xDivaltoMajIni).
Lors de la connexion, pour utiliser les informations de connexion de Windows, il faut mettre dans la chaîne de connexion : "Trusted_Connection=Yes;".
Si, au contraire, vous voulez utiliser un compte générique, local au serveur SQL, il faut mettre : "User Id=xxxx; Password=xxxx;".
Fichier paramètre des implicites SQL
C'est un fichier paramètre facultatif au format xml :
S'il est absent, toutes les connexions à la base de données utiliseront la connexion "default" du fichier des connexions.
S'il est présent, il permet d'établir la correspondance entre les bases de données "DataBase" et la connexion physique à la base définie dans le fichier des connexions.
Ce fichier est lié à l'utilisateur. Il porte le même nom que le fichier des chemins implicites avec l'extension .xml et il est stocké au même endroit (répertoire pointé par ServeurXLOGF).
A l'instar du fichier des chemins implicites pour les fichiers, il permet de définir la ou les bases de données auxquelles l'utilisateur accédera.
Exemple 1 : Tables de la paye implantées dans une base à part.
Dans le fichier des connexions, on définira deux connexions :
Paye pour accéder à la base de données Paye.
Default pour accéder à la base de données ERPDivalto.
Dans le fichier des implicites SQL, on indiquera que les accès à la DataBase DPAIE doivent utiliser la connexion Paye.
Exemple 2 : Environnements de production et de test.
On définira ici deux environnements :
Dans l'environnement de production, la connexion default accédera à la base ERPDivalto.
Dans l'environnement de test, la connexion default accédera à la base TESTDivalto.
Remarque :
Deux fichiers d'implicites SQL (ImplicitesDemo.xml et ImplicitesDefaut.xml) sont livrés. Toutes les connexions utilisent la connexion <default> du fichier connexions.xml, sauf celles aux tables de Divalto BI qui utilisent la connexion <DWDivalto>.
Si la base de données du BI n'est pas celle de l'ERP Divalto (configuration recommandée), il faudra ajouter, dans le fichier Connexions.Xml, la connexion à la base BI. Elle se trouve dans le fichier xml portant le nom de la base BI (par défaut DWDivalto.xml) et qui se trouve dans le répertoire /Divalto/Nom de la base BI (par défaut /Divalto/DWDivalto).
RecordSQL et DataBase
Le connecteur SQL accède à la base de données en faisant référence à un RecordSQL. Il s'agit d'un objet décrivant l'accès aux tables. Les RecordSQL sont stockés dans des dictionnaires de RecordSQL.
Chaque table est rattachée à une base de données par un paramètre DataBase. Ce paramètre peut ensuite être utilisé pour définir le lien avec la base de données réelle. Ainsi, on pourra par exemple mettre l'ensemble des tables de la paye dans une base de données distincte de celle des autres produits de l'ERP.
Installation de Divalto Business Intelligence
Pour installer Divalto Business Intelligence, consultez la fiche expert d'installation de l'offre Divalto BI.
La fiche "Fiche_Expert_Installation_BI.doc", disponible en téléchargement sur MyDivalto, décrit notamment :
La mise en place de la base de données Datawarehouse.
La configuration de Divalto et le lancement de Divalto Power Datawarehouse Builder.
Le déploiement des rapports : offre Reporting et BI (Datawarehouse et cube).
La création du cube de données.
Base de données Microsoft Sql Server - Particularités
Version minimale de SQL Server
L'ERP Divalto infinity version 7 nécessite impérativement un serveur de bases de données Microsoft SQL Server 2008 R2. Celui-ci doit être installé et opérationnel avant l'installation de l'ERP.
Création des bases de données
Attention :
Le nom de la base de données, sensible à la casse, doit impérativement être en majuscule.
Le paramètre "Classement" de l'onglet "Options" doit impérativement être positionné à Latin1_General_bin lors de la création de la base :
Divalto BI
Pour l'utilisation de Divalto BI, il est impératif d'installer le serveur avec l'option "Authentification mixte". L'option par défaut proposée est Windows. Attention, il est préférable d'activer l'option lors de l'installation de SQL Server. (Elle peut toutefois être modifiée ultérieurement ou sur un serveur déjà installé sans cette option) :
Driver et chaîne de connexion ODBC
Le service Xlan accède à la base de données Microsoft SQL Server 2008 par le driver ODBC 32bits SQL Server Native Client 10.0 :
La chaîne de connexion ODBC à fournir au connecteur SQL sera par exemple la suivante :
DSN=sql2008;Description=sql2008;Trusted_Connection=Yes;APP=Divaltoinfinity;WSID=TL; DATABASE=ERPDIVALTO;
Ports TCP utilisés par SQL Server
Dans une installation simple, seul le port 1433 est utilisé. Pour plus de détails, reportez-vous à la documentation Microsoft (Configurer le Pare-feu Windows pour autoriser l’accès à SQL Server - SQL Server ).
En cas d'installation de plusieurs instances de SQL Server
Lors de l'installation de l'ERP, il faut alors renseigner le paramètre "Nom de l'instance" pendant la phase de paramétrage du connecteur SQL. Attention : Avec la version SQL Express, il faut impérativement renseigner ce nom d'instance (SQLEXPRESS par défaut).
Complément d'installation d'un poste client lourd
Sur un poste "client lourd", on installe Harmony Power Foundation.
Et si l'option ServeurXLOGF (gestion centralisée des utilisateurs) n'est pas active, il convient d'installer localement, dans le répertoire /Divalto/Sys :
Le fichier paramètres des connexions connexions.xml (à copier depuis le répertoire /Divalto/Sys du serveur de données).
Eventuellement le fichier des implicites SQL, si plusieurs bases de données sont nécessaires.
Installation standard des aides utilisateur Harmony et de l'ERP Divalto
Cette rubrique concerne les aides affichées par les applications s'exécutant en mode client léger (aides au format WebHelp).
Il s'agit en particulier des aides de l'ERP Divalto et des aides "utilisateur" du système Harmony . Ces dernières sont incluses dans l'aide A5faide de l'ERP Divalto, ce qui les rend accessible depuis le menu Divalto.
Pour rapidement installer et paramétrer l'accès aux aides (hors connexion en mode Service Web) :
Exécutez l'installateur de Harmony Power Foundation sur le serveur d'applications et sélectionnez le choix d'installation des aides de l'ERP. Copiez les fichiers d'aides dans le dossier x:\Divalto\WebAide (proposé par défaut).
Hors mode local, partagez ce dossier sous le nom de partage DivaltoWebAide.
Les aides utilisateur d'Harmony comprennent :
Des explications concernant la boîte de connexion et ses options avancées.
Des explications générales sur la mise en œuvre des applications Harmony (règles et conventions, comment se déplacer dans un masque, comment saisir les différents types de contrôles, comment utiliser les objets tableau et arbre, etc.).
Un livre sur l'éditeur de textes riches.
Le guide d'utilisation du zoom SQL et de la fenêtre de consultation de la liste des fiches d'"une table. Remarque : Le zoom de la version 6, bien qu'encore utilisable, est amené à disparaître et son aide n'est pas disponible en mode client léger. Toutefois, il reste documenté dans le manuel de référence d'Harmony.
Le guide d'utilisation de Divalto Power Search.
Des tableaux récapitulant les règles d'utilisation de la souris et du clavier sous Harmony.
Remarque :
Le chemin d'accès aux aides est spécifié dans la base de registre des utilisateurs. Toutefois, aucun paramétrage du chemin n'est requis si les aides sont installées comme indiqué précédemment (le chemin x:\Divalto\WebAide est pris par défaut en mode local, le chemin //serveur_applic/DivaltoWebAide est pris par défaut en mode TCP/IP). En cas d'installation non standard (dossier racine ou partage personnalisé, serveur Web), consultez la rubrique Configuration des serveurs d'aides et d'applications qui fournira toutes les explications nécessaires à la compréhension des principes de déploiement et d'installation des aides. En cas d'installation sur un site multi-environnement ou multi-langue, consultez d'abord la rubrique Configuration des serveurs d'aides et d'applications puis reportez-vous aux rubriques :[ Installation des aides sur un site multi-environnement|#Top_of_Installation_des_aides_su].[ Installation des aides sur un site multi-langue|#Top_of_Installation_des_aides_su_1].
La présente documentation (manuel de référence d'Harmony), livrée dans /Divalto/Sys au format HTML Help (.chm) et destinée essentiellement aux installateurs et administrateurs, n'est accessible qu'en mode local.
Configuration des serveurs d'aides et d'applications
Cette rubrique concerne les aides affichées par les applications s'exécutant en mode client léger (aides au format WebHelp).
Elle explique comment configurer votre site,en cas d'installation personnalisée des aides des applications ou si vous désirez héberger les aides sur un serveur Web. En cas d'installation "standard", reportez-vous à la rubrique Installation des aides utilisateur Harmony et de l'ERP Divalto.
Déploiement des aides
Tous les constituants d'une aide au format WebHelp sont regroupés dans un même dossier. Lorsqu'une ou plusieurs applications proposent plusieurs aides, on obtient plusieurs dossiers. Par exemple, l'ERP Divalto propose une aide pour l'application "Commerce et logistique", une aide pour l'application "Comptabilité", etc. Chacune de ces aides fait l'objet d'un dossier distinct (gtfaide, ccfaid, ...).
Sur l'ordinateur qui hébergera les fichiers d'aides, tous ces dossiers doivent être déployés sous un même répertoire « racine ». Le chemin d'accès à ce répertoire est paramétré, côté serveur d'applications, dans la base de registre de l'utilisateur.
Remarque : Chaque dossier contient lui-même une "page de lancement", portant le même nom que le nom du dossier avec l'extension .htm. Par exemple, le dossier gtfaide contient la page de lancement gtfaide.htm.
Par exemple :
c:/Divalto/WebAide : répertoire "racine"
gtfaide : dossier <=> aides de l'application "Commerce et logistique"
gtfaide.htm, ... : fichiers constituants avec la page de lancement gtfaide.htm
ccfaid : dossier <=> aides de l'application "Comptabilité"
ccfaid.htm, ... : fichiers constituants avec la page de lancement ccfaid.htm
etc.
Remarque à l'attention des développeurs :
Le nom du fichier d'aides spécifié dans les programmes et les masques doit être identique au nom du dossier d'aides correspondant (gtfaide ou ccfaid dans l'exemple ci-dessus). Cf. Aide à la programmation de Xwin, Chapitre "Aides fenêtrées : Manuel de référence", Rubrique "Saisie et génération d'un fichier d'aides".
Configuration des serveurs d'aides et d'applications
Deux méthodes permettent d'accéder aux aides déployées sur un ordinateur serveur :
Accès "local". Les aides se trouvent soit sur l'ordinateur sur lequel s'exécute le client léger, soit sur un « serveur d'aides » en réseau local.
Accès "distant". Les aides sont délivrées par un serveur Web, avec IIS installé. Remarque : le logiciel de conception d'aides RoboHelp propose un outil de publication sur un serveur Web.
Dans la pratique, on distinguera trois cas :
Les aides sont directement hébergées sur le client léger (en mode local). Cette configuration sera par exemple utilisée par les développeurs.
Les aides sont hébergées sur un ordinateur serveur en réseau local. Cette configuration sera généralement utilisée avec un client léger connecté au serveur d'applications en mode TCP/IP. Le serveur d'aides pourra être le serveur d'applications lui-même.
Les aides sont hébergées sur un serveur Web. On utilisera généralement cette configuration avec un client léger connecté au serveur d'applications en mode Service Web.
Hébergement par le client léger en mode local
Configurez uniquement le poste client léger (qui est aussi le serveur d'applications) : dans la base de registre de l'utilisateur, garnissez la clé "CheminAidesWeb" du chapitre "System" avec le chemin d'accès Windows au répertoire « racine » des aides.
On utilisera ici le protocole "file:".
Exemple : file://c:/divalto/WebAide
Remarque :
En mode local, la valeur "standard" indiquée dans l'exemple sera prise par défaut. Il ne sera donc nécessaire de modifier la clé de registre qu'en cas de stockage des aides dans un autre répertoire que x:/divalto/WebAide.
Hébergement par un serveur d'aides en réseau local
Serveur d'aides : Créez un partage sur le répertoire « racine » des aides. Exemple : partagez c:/divalto/WebAide avec le nom de partage DivaltoWebAide.
Serveur d'applications : Dans la base de registre des utilisateurs, garnissez la clé "CheminAidesWeb" du chapitre "System" avec le chemin d'accès Windows au partage défini précédemment. On utilisera ici le protocole "file:". Exemple : file://ServeurAides/DivaltoWebAide Remarque : Le serveur d'aides et le serveur d'applications peuvent être confondus. En mode TCP/IP, la valeur "standard" file://<MoiMême>/DivaltoWebAide sera prise par défaut (où <MoiMême> représente le nom du serveur d'applications). Il ne sera donc nécessaire de modifier la clé de registre qu'en cas d'utilisation d'un autre nom de partage que DivaltoWebAide OU d'un serveur d'aides différent du serveur d'applications.
Hébergement par un serveur Web
Serveur d'aides : Créez une application virtuelle IIS et faites-la pointer sur le dossier « racine » des aides. Exemple : DivaltoWebAide pointant sur c:/Divalto/WebAide.
Serveur d'applications : Dans la base de registre des utilisateurs, garnissez la clé CheminAidesWeb du chapitre "System" avec l'url d'accès au répertoire virtuel IIS défini précédemment. On utilisera ici le protocole "http:". Exemple : http://ServeurAides/DivaltoWebAide Remarque : Le serveur d'aides et le serveur d'applications peuvent être confondus. En mode Service Web, la valeur "standard" http://<MoiMême>/DivaltoWebAide sera prise par défaut (où <MoiMême> représente le nom du serveur d'applications). Il ne sera donc nécessaire de modifier la clé de registre qu'en cas d'utilisation d'un autre répertoire virtuel IIS que DivaltoWebAide OU d'un serveur d'aides différent du serveur d'applications.
Attention :
Pour un utilisateur donné, le chemin d'accès aux aides est dans tous les cas unique pour l'ensemble des aides. En particulier, il faut installer les aides spécifiques au même endroit que les aides utilisateur Harmony et de l'ERP Divalto.
Voir aussi :
Installation des aides sur un site multi-environnement
Installation des aides sur un site multi-langue
Centralisation des fichiers d'aides de la version 6
Cette rubrique concerne les fichiers d'aide affichés par les applications tournant encore en version 6 (hors client léger).
Il est intéressant, en particulier pour simplifier leur mise à jour, de centraliser les fichiers d'aides des applications.
Par xDivaltoMajIni, ajoutez pour ce faire dans le chapitre System la clé :
CheminAides=xxxxx où xxxxx spécifie le chemin d'accès Windows à un dossier partagé sur le réseau. Exemple : CheminAides=//Serveur/FichiersAides
Remarque : Tout fichier d'aides sera recherché en priorité dans le répertoire indiqué ; si le fichier ne s'y trouve pas, une seconde recherche sera faite sans préciser de répertoire (le fichier doit alors se trouver dans un dossier recensé dans la liste des "Paths" de Windows ou dans le dossier "courant", en général dans x:/Divalto/Sys). Ainsi, on pourra par exemple placer les fichiers d'aides applicatifs dans un répertoire spécifique et laisser les fichiers d'aides "système" dans /Divalto/Sys.
MAIS ATTENTION : En standard, Windows interdit l'appel à un fichier d'aides (.chm) distant. Toutefois, cette restriction imposée pour des raisons de sécurité peut être contournée de la manière suivante :
Par NotePad, saisissez les lignes suivantes : REGEDIT4 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x\ItssRestrictions] "MaxAllowedZone"=dword:00000001 Avec un système 64 bits, il faut saisir les lignes : REGEDIT4 [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\HTMLHelp\1.x\ItssRestrictions] "MaxAllowedZone"=dword:00000001
Sauvez dans un fichier .reg et exécutez ce fichier. Ce script modifie la base de registre pour autoriser l'exécution d'un fichier "HtmlHelp" (.chm) distant. Il doit être exécuté sur chaque poste client.
Installation des aides sur un site multi-environnement
Rappelons que la notion de système multi-environnement donne la possibilité à un utilisateur de changer dynamiquement son environnement de travail. Ceci peut s'avérer pratique, sur une installation en mode ASP, pour mettre à disposition des aides de versions différentes ou des aides traduites en langue étrangère selon les clients hébergés. Un environnement Harmony détermine un serveur Xlogf (base de données des utilisateurs Harmony), un serveur de fichier paramètres des langues, un serveur d'aides pour les applications s'exécutant en mode client léger et un serveur d'aides pour les applications tournant encore en version 6. Changer d'environnement permet alors de changer les chemins d'accès aux aides (V7 et V6). La valeur de la clé correspondant à un environnement comporte donc quatre paramètres (séparés entre eux par une virgule).
Par exemple :
[Environnement]
Serveur1=//serveur_un/divalto/sys,//serveur_un/divalto/sys,file://serveur_un/divaltowebaide,//serveur_un/divalto/sys
Serveur2=//serveur_deux/divalto/sys,//serveur_deux/divalto/langues,http://serveur_aides/Client1_webaide,//serveur_deux/divalto/Client1_aides
Installation des aides sur un site multi-langue
Aides affichées par les applications s'exécutant en mode client léger
Pour qu'un utilisateur affiche une aide traduite en langue étrangère, il faut stocker les fichiers d'aides traduits dans un répertoire « racine » spécifique et faire pointer le chemin des aides sur ce répertoire pour les utilisateurs concernés. La méthode optimale consiste ici à utiliser le système des environnements.
Exemple sans environnement :
CheminAidesWeb=file://serveur/DivaltoWebAide_DE
Partage DivaltoWebAide_DE <=> répertoire « racine » pour un utilisateur allemand
gtfaide
ccfaid dossiers contenant les aides traduites en allemand
etc..
Exemple avec environnements :
[Environnement]
User_DE=...,file://serveur/DivaltoWebAide_DE
User_EN=...,file://serveur/DivaltoWebAide_EN
Partage DivaltoWebAide_DE <=> répertoire « racine » pour un utilisateur allemand
gtfaide
ccfaid dossiers contenant les aides traduites en allemand
etc..
Partage DivaltoWebAide_EN <=> répertoire « racine » pour un utilisateur anglais
gtfaide
ccfaid dossiers contenant les aides traduites en anglais
etc..
Attention en cas de traduction partielle :
Il se peut que vous ne disposiez pas d'une traduction dans la langue de l'utilisateur pour toutes les aides applicatives ou système. Comme le chemin des aides est unique pour un utilisateur, vous devez dans ce cas :
Procéder à l'installation des aides traduites dans la langue de l'utilisateur comme indiqué précédemment.
Dupliquer les dossiers contenant les autres aides dans le répertoire « racine » des aides traduites.
Exemple : Monaide1 a été traduit en allemand ; Monaide2 n'a été traduit qu'en anglais ; les autres aides n'existent qu'en français. L'utilisateur allemand affiche bien évidemment les aides de Monaide1 dans sa langue naturelle et préfère afficher les aides de Monaide2 en anglais plutôt qu'en français : CheminAidesWeb=file://serveur/DivaltoWebAide_DE
Partage DivaltoWebAide_DE <=> répertoire racine pour l'utilisateur allemand
Monaide1 : dossier des aides traduites en allemand
Monaide2 : duplication du dossier Monaide2 des aides traduites en anglais
Monaide3, ... : duplication des dossiers Monaide3, ... originaux
Aides affichées par les applications tournant encore en version 6
Les fichiers d'aides traduits doivent répondre à la norme suivante : le nom d'un fichier traduit en langue étrangère doit être le nom du fichier de référence auquel on ajoute le caractère "_" suivi du code langue. Exemple : Pour le fichier de référence ficaide.chm, le nom du fichier traduit en allemand (code langue DE) doit être ficaide_DE.chm.
Lorsque l'utilisateur travaille avec une langue d'affichage différente du français, Harmony procède à trois fois deux tentatives successives pour trouver le fichier des aides demandé par l'application :
Recherche du fichier d'aides avec le code langue de l'utilisateur, d'abord dans le répertoire spécifié par CheminAides puis sans spécifier de répertoire . On recherche donc en priorité une traduction dans la langue du client.
Recherche du fichier d'aides avec le code langue des aides par défaut, d'abord dans le répertoire spécifié par CheminAides puis sans spécifier de répertoire . Pour chaque langue, un code langue des aides par défaut peut être précisé dans le fichier paramètres des langues (balise <HelpCode>). Exemple : ficaide_EN.chm avec, dans le fichier paramètres, la ligne : <LanguageCode>DE<Description>Allemand<HelpCode>EN. On recherche ensuite une traduction dans une langue de substitution. Exemple : On dispose de la traduction allemande des aides d'une application de comptabilité mais pas la traduction allemande des aides d'une application de gestion commerciale. Toutefois, on dispose pour ces dernières d'une traduction anglaise. L'utilisateur a donc le choix entre la version française et la version anglaise : <HelpCode>EN permet de choisir la version anglaise plutôt que la version française lorsque la version allemande n'est pas disponible.
Recherche du fichier d'aides de référence, d'abord dans le répertoire spécifié par CheminAides puis sans spécifier de répertoire . On recherche en dernier lieu la version française.
Sans spécification de répertoire, le fichier doit être dans un dossier recensé dans la liste des "Paths" de Windows ou dans le dossier "courant" (en général, dans x:/Divalto/Sys).
Exemple :
Avec le paramétrage suivant :
CheminAides=c:/MesAides
<LanguageCode>DE<Description>Allemand<HelpCode>EN
Le fichier d'aides ficaide sera recherché successivement sous les noms suivants :
c:/MesAides/ficaide_de.chm
ficaide_de.chm
c:/MesAides/ficaide_en.chm
ficaide_en.chm
c:/MesAides/ficaide.chm
Installation d'un serveur multi-bases
Ce chapitre explique les principes de mise en oeuvre de Divalto en mode ASP.
Architecture
Le concept général est de mutualiser Divalto sur un serveur d'applications (ou une ferme de serveurs) pour des entreprises clientes différentes. Chaque entreprise cliente est indépendante, et n'a aucun accès aux données des autres entreprises hébergées sur le même serveur.
Les utilisateurs se connectent sur un serveur d'applications (ou une ferme de serveurs TSE ou Citrix).
Dans le cas d'une ferme de serveurs d'applications, il faut un serveur de données sur lequel sont stockés les bases de données. Dans des configurations importantes, pour améliorer les temps de réponse, on peut envisager de multiplier également les serveurs de fichiers.
Sur un serveur d'application récent, on peut héberger une vingtaine d'utilisateurs par processeur.
La bande passante nécessaire par client est de l'ordre de 20 Kbits/s pour un poste client. Il s'agit d'un minimum qu'il faudra augmenter en fonction des impressions.
Partage du serveur entre les clients ASP
Chaque client ASP travaille dans des fichiers qui lui sont propres.
Les répertoires sont protégés par des droits d'accès Windows.
Les utilisateurs Divalto sont les utilisateurs de Windows (X_USER = !).
Chaque utilisateur a des chemins implicites qui correspondent aux fichiers de l'entreprise cliente ASP.
Pour chaque client, on aura dans les chemins implicites : a. Le répertoire propre des fichiers (avec les dictionnaires et les dictionnaires de surcharge). b. Le répertoire des spécifiques clients (menus, surcharges). c. Le répertoire vers la version Divalto du client.
Pour chaque client, il y a un fichier des utilisateurs de Divalto distinct. La clé ServeurXlogf du chapitre System de Divalto.ini permet d'indiquer, pour chaque utilisateur, où se trouve le fichier Xlogf.dhfi :
ServeurXlogf=//nom_de_serveur/… Xlogf est recherché dans le répertoire indiqué du serveur. Exemple : ServeurXlogf=//nom_de_serveur/Divalto/SocieteUn
ServeurXlogf=/… Xlogf est recherché en local, dans le répertoire indiqué. Exemple : ServeurXlogf=/Divalto/SocieteDeux
Rappel : les fichiers de chemins implicites sont recherchés au même endroit que Xlogf.dhfi.
De manière similaire, la clé CheminLangues du chapitre System de Divalto.ini permet d'indiquer, pour chaque utilisateur, où se trouve le fichier de paramétrage des langues TranslateParams.txt.
Voir la rubrique Création d'un site Harmony Web pour obtenir un fonctionnement identique en mode Web.
Réservations
Cf. paragraphe "Réservation globale ou réservation par base sur un serveur" de la rubrique Déclaration des chemins Harmony.
Fichiers d'aides
Lorsque les fichiers d'aides des applications ne sont pas identiques pour tous les clients ASP, il n'est pas possible de placer tous les fichiers au même endroit. La solution consiste à stocker les fichiers dans un répertoire spécifique à chaque société cliente : voir le livre "Installation des fichiers d'aides", en particulier les rubriques Configuration des serveurs d'aides et d'applications, Centralisation des fichiers d'aides de la version 6 et Installation des aides sur un site multi-environnement.
Gestion de Divalto.ini pour les clients ASP
Certains utilitaires (xDivaltoMajini, xDivaltoPrinters, DivaltoViewer) modifient la section Divalto.ini de la base de registre de l'appelant et lui demandent s'il désire répercuter les modifications pour tous les utilisateurs.
En mode ASP, il est évidemment souhaitable de différencier les utilisateurs, au moins par société. Pour cela, regroupez les utilisateurs d'une même société dans un groupe d'utilisateurs Windows. Si l'appelant fait partie d'un tel groupe, les modifications qu'il apporte seront répercutées uniquement sur les Divalto.ini des utilisateurs appartenant au même groupe. (Mais ATTENTION, si l'appelant ne fait pas partie d'un tel groupe, les modifications seront répercutées comme d'habitude sur tous les Divalto.ini.)
En pratique :
Une première possibilité est de préfixer le nom du groupe par "Divalto_" (par exemple : Divalto_SocieteUn). Dans ce cas, la répercution est automatique pour les utilisateurs de ce groupe.
A partir de la version 2016, une boîte de dialogue permet de saisir une liste de groupes vers lesquels on souhaite propager les modifications. Au menu "Fichier" ou "Options", sélectionnez le choix "Saisir un nom de groupe à ajouter dans la propagation" :
La propagation demande une confirmation avec l'affichage des groupes concernés.
ATTENTION : cette fonctionnalité est uniquement disponible si vous lancez l'utilitaire par la commande <Exécuter> du menu Démarrer de Windows avec le paramètre /propager. Par exemple :
xDivaltoMajini.exe /propager
Installation sous Windows Terminal Serveur
Qu'est-ce que Terminal Serveur ?
Windows Terminal Serveur Edition (TSE) est un système d'exploitation de Microsoft permettant de travailler en multiposte sous Windows. Chaque poste de travail client se comporte comme un ordinateur virtuel opérant sous ce système.
L'application s'exécute sur le serveur d'applications ; l'image de la session en cours s'affiche sur le poste client. Le protocole de communication entre le serveur et le poste client se nomme RDP (Remote Desktop Protocol) sous système TSE natif, ou ICA (Independent Computing Architecture) sous système Citrix.
Quelques avantages de ce type de système :
Simplification de l'administration des applications.
Déploiements facilités.
Temps de réponse optimisés pour les utilisateurs mobiles ou les postes connectés à distance. En effet, les informations qui transitent entre le client et le serveur sont uniquement les objets affichés à l'écran et les objets édités sur une imprimante cliente, ce qui nécessite une bande passante fortement réduite (environ 20 Kilobits par poste pour la partie affichage).
Load balancing (optionnel avec plusieurs serveurs d'applications). Le serveur sur lequel va s'exécuter l'application est choisi dynamiquement par le système afin de répartir la charge de travail sur les différents serveurs d'applications.
D'autre part, les postes client peuvent être :
Des terminaux Windows (par exemple le terminal Wyse Winterm 3315SE), terminaux passifs graphiques.
Des PC équipés du client TSE, logiciel d'émulation de terminal qui permet d'afficher sur un PC l'image de la session se déroulant sur le serveur. Ce logiciel est livré avec Windows Terminal Serveur Edition.
Des PC équipés du client Citrix ICA (dans ce cas, le logiciel serveur MetaFrame de Citrix doit être installé en supplément sur le serveur TSE).
Licences concurrentes Divalto pour TSE
Comme dans une installation classique, les licences concurrentes sont comptabilisées par poste client (une licence par produit pour toutes les tâches d'un poste).
Architectures TSE
En fonction du nombre de postes connectés, on peut envisager deux architectures :
Une architecture Mono serveur d'applications pour les petites ou moyennes installations. Un seul serveur gère l'ensemble des postes du site. Harmony et les applications sont installés sur ce serveur.
Une architecture Multi serveurs d'applications pour les installations plus importantes. Lorsque le nombre de postes à gérer dépasse la capacité d'un serveur, on optera pour plusieurs serveurs d'applications Windows (avec TSE). Chaque serveur prend en charge les postes clients qui lui sont connectés. On ajoutera un tel serveur au fur et à mesure de la montée en charge de l'installation. On installera Harmony et les applications sur chaque serveur d'applications. Bien entendu, la gestion des licences peut être centralisée sur le serveur de données.
Installation d'Harmony pour TSE
L'installation d'Harmony sur un serveur d'applications TSE doit être effectuée sous un compte d'administration et après l'installation de TSE. Elle diffère uniquement d'une installation classique sous Windows par quelques particularités, que nous allons détailler dans les rubriques qui suivent.
En particulier, si vous installez Harmony sur un pool de serveurs TSE (ou Citrix), en mode "Load balancing", prenez connaissance des particularités liées à ce mode de fonctionnement à la rubrique Installation sur un site comportant plusieurs serveurs TSE.
Remarque importante : Ne passez pas par « Ajout/Suppression de Programmes » pour installer Harmony sous Windows TSE.
Profils d'utilisateur Windows
Sous Windows, chaque utilisateur du système est identifié par un code d'utilisateur. Il est impératif de s'identifier avec ce code pour ouvrir une session. Chaque code est rattaché à un compte d'utilisateur qui décrit les propriétés de cet utilisateur, notamment :
Ses droits.
Le ou les groupes d'utilisateurs auquel il appartient.
Son profil d'environnement.
Un paramétrage pour ses connexions au serveur.
Etc.
Le profil d'environnement inclut en particulier :
Un bureau et un menu "Démarrer" personnalisés.
Les raccourcis sur le bureau.
Les connexions permanentes au réseau.
Les préférences pour les menus et les barres d'outils.
Les documents consultés récemment.
Les profils des utilisateurs sont stockés dans le sous-répertoire Profiles du répertoire de Windows. Dans Profiles, chaque utilisateur dispose d'un sous-répertoire, incluant un répertoire Windows.
Exemple d'implémentation des profils d'utilisateur :
c:\windows répertoire de base de Windows
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Installation d'Harmony sous plusieurs comptes / profils utilisateur
|
|
A la question Nombre de tâches posée par l'installateur d'Harmony :
Entrez le nombre total de Tâches de base + 1 (dans ce calcul, on NE comptera donc NI les tâches « filles » NI les tâches « ODBC »).
Exemple : on souhaite connecter 10 postes client au serveur, chacun susceptible d'exécuter jusqu'à trois applications Harmony simultanément ; on obtient alors le nombre 31 (10 x 3 + 1).
Remarque : Les numéros de tâches iront :
En croissant pour les Tâches de base (à partir de 2).
En croissant pour les tâches filles supplémentaires (à partir du Nombre de tâches saisi + 1) ; dans notre exemple : 32, 33, 34, etc.
En décroissant pour les tâches ODBC (à partir de 999).
Modification ultérieure du nombre de tâches
Les informations concernant le nombre de tâches sont stockées dans Divalto.ini. Si vous souhaitez les modifier, appelez le programme xDivaltoMajIni(.exe) :
Dans le chapitre [System], vous trouverez les mots clés suivants (les valeurs associées sont ici données à titre d'exemple) : NbTaches=31 TacheDebutModule=32 TacheFinModule=255
NbTaches | Nombre de tâches Harmony saisi à l'installation (tâches de base + 1). |
TacheDebutModule | Numéro de la première tâche lancée par ProgramCall ou Zoom. |
TacheFinModule | Numéro de la dernière tâche lancée par ProgramCall ou Zoom. |
Redémarrage de Windows
Après le redémarrage du poste, on poursuivra la procédure d'installation standard (installation et configuration éventuelle d'un serveur Xlan, installation des applications, etc.) puis on effectuera les opérations décrites ci-après.
Configuration des imprimantes sous TSE
xDivaltoPrinters stocke la configuration des imprimantes dans la section Divalto.ini de la base de registre. Sous TSE, cette section est propre à l'utilisateur en cours. Lorsque vous ajoutez ou modifiez des paramètres d'imprimantes, xDivaltoPrinters vous propose de propager les nouveautés chez les autres utilisateurs : voir Modification de Divalto.ini.
ATTENTION : cette fonctionnalité est uniquement disponible si vous lancez xDivaltoPrinters par la commande <Exécuter> du menu Démarrer de Windows avec le paramètre /propager :
xDivaltoPrinters.exe /propager
Installation sur un site comportant plusieurs serveurs TSE
Lorsque le site comporte plusieurs serveurs d'applications, TSE (ou CITRIX) propose un mode de fonctionnement dénommé "Load balancing". Dans ce mode :
Les clients se connectent non pas à une machine spécifique mais à un "groupe de serveurs".
A la connexion d'un client, le système TSE lui attribue dynamiquement un serveur, afin de répartir la charge de travail sur les différents serveurs d'applications. L'attribution de tel ou tel serveur est décidée à chaque nouvelle connexion et le lien n'est effectif que le temps de cette connexion : si le client se connecte une deuxième fois, un autre serveur TSE pourra lui être attribué.
Rappelons que les clients sont dits "nomades" et que leurs profils TSE sont stockés sur un serveur spécifique.
Spécificités de l'installation d'Harmony en cas de "Load balancing"
Si vous installez Harmony sur un site fonctionnant en mode "Load balancing", vous devez respecter certaines contraintes. Comme n'importe quel serveur peut être attribué à un client, il est impératif que tous les serveurs soient équivalents pour les applications Harmony, afin que ces dernières "tournent" toujours sous un environnement similaire.
L'environnement d'une application Harmony, c'est son serveur Xlogf, ses dossiers implicites, sa configuration Odbc, ses modèles d'imprimante, sa section Divalto.ini dans la base de registre, etc.
Si l'environnement diffère d'un serveur à l'autre, le comportement de l'application pourra différer de manière plus ou moins aléatoire.
Il est très important que vous procédiez à la mise en place de l'indirection AVANT d'installer Harmony. Ce paramétrage est décrit en détails au paragraphe Report des modifications dans une configuration multi-serveurs TSE de la rubrique Modification de Divalto.ini.
Ensuite :
Installez Harmony sur tous les serveurs avec le même paramétrage. (en particulier, même unité disque X: et code utilisateur ! conseillé). Chaque installation va créer un fichier Installlog dans le répertoire d'indirection \\xxx\installlog.
Après avoir procédé au paramétrage complet d'Harmony sur un des serveurs, copiez les fichiers Xlog.dhfi, Xlog.dhfd, fPrinters.dhfi, fPrinters.dhfd, fOdbc.dhfi, fOdbc.dhfd, fConfig.dhfi et fConfig.dhfd dans le répertoire X:\Divalto\Dys de tous les autres serveurs.
Rappels :
Les formats pour le spool et les imprimantes se paramètrent avec xDivaltoPrinters.exe. Les paramètres pour Envoyer (mails, fax, etc.) sont saisis avec DivaltoViewer.exe (menu "Options"). Divalto.ini se paramètre avec xDivaltoMajini.exe (ServeurXlogf en particulier).
Lorsque vous modifiez un paramétrage sur un serveur, vous pouvez propager ou non les modifications apportées vers tous les serveurs. La plupart du temps, on aura intérêt ici à effectuer la propagation, de manière à ce que tous les serveurs conservent le même paramétrage en permanence (par exemple, le paramétrage des imprimantes partagées par tout le monde, le nom du serveur Xlogf, ...).
Remarque :
Il peut arriver qu'un serveur ne soit pas totalement équivalent aux autres. Par exemple, une imprimante "locale" peut être connectée à un serveur particulier. Dans ce cas, le paramétrage de cette imprimante sera propre à ce serveur. Harmony gère parfaitement ce cas mais n'oubliez pas que les états édités par l'application n'ont pas l'assurance de sortir sur cette imprimante puisque le serveur sur lequel elle va s'exécuter n'est pas connu à l'avance.
Arrêt et redémarrage automatisés
Cf. utilitaire xDivaltoRestart.
Ajout d'un nouvel utilisateur
Pour ajouter un nouvel utilisateur (par exemple à l'occasion de l'ajout d'un nouveau terminal), créez d'abord un compte d'utilisateur sous Windows puis dans le fichier des utilisateurs d'Harmony (Xlogf). Ensuite, ouvrez une session sous ce compte.
Ajout d'une nouvelle application
Après avoir installé une nouvelle application sous un compte d'administration, effectuez la mise à jour des paramètres pour chaque utilisateur. Vous pouvez :
Soit redémarrer les ordinateurs clients.
Soit fermer et rouvrir les sessions des utilisateurs connectés.
Soit lancer le programme xMajSession(.exe) sur chaque poste connecté.
Remarque : l'ouverture d'une session par un utilisateur non connecté provoquera automatiquement la mise à jour de ses paramètres.
Modification de Divalto.ini
Chaque utilisateur dispose de sa propre section Divalto.ini dans la base de registre. Les modifications qui y sont faites sont par défaut locales à cet utilisateur. Mais les utilitaires Harmony qui manipulent Divalto.ini (xDivaltoPrinters, xDivaltoMajIni) permettent de répercuter les modifications pour tous les comptes d'utilisateur :
Lorsqu'on les quitte, ces utilitaires proposent de répercuter les nouveautés vers les autres utilisateurs : - Non : les modifications ne concerneront que l'utilisateur courant. - Oui : les modifications seront reportées pour tous les utilisateurs (localement ; pour une mise à jour de toutes les bases de registre dans une configuration multi-serveurs, voir le paragraphe « Report des modifications dans une configuration multi-serveurs TSE » ci-dessous).
Chaque série de modifications est enregistrée dans un fichier .log (nom généré automatiquement à partir de la date). Les fichiers .log sont stockés dans le répertoire X:\Divalto\Installlog.
ATTENTION : cette fonctionnalité est uniquement disponible si vous lancez l'utilitaire par la commande <Exécuter> du menu Démarrer de Windows avec le paramètre /propager. Par exemple :
xDivaltoPrinters.exe /propager
Création du Divalto.ini d'un utilisateur Lorsqu'un utilisateur se connecte pour la toute première fois, une section Divalto.ini est automatiquement créée dans la base de registre. Le cas échéant, lui sont appliquées toutes les modifications faites depuis l'installation du site (avec DivaltoMajIni ou xDivaltoPrinters) pour lesquelles on a demandé répercussion vers tous les utilisateurs.
Report des modifications postérieures à la création Si la section Divalto.ini d'un utilisateur A est modifiée avec demande de répercussion, les sections Divalto.ini des autres utilisateurs seront modifiées avec ces dernières nouveautés :
A la prochaine ouverture de session effectuée par l'utilisateur B, si B n'est pas connecté au moment où A est mis à jour.
Si B est connecté au moment où A est mis à jour : - Au redémarrage de l'ordinateur de B OU - Après fermeture puis réouverture de la session de B OU - Si B lance le programme xMajSession.exe.
Report des modifications dans une configuration multi-serveurs TSE
Par défaut, les modifications ne sont reportées que localement (sur l'ordinateur où est faite la modification). Dans le cas d'une installation sous TSE ou Citrix comportant plusieurs serveurs d'application, si vous voulez que les modifications soient aussi reportées sur les autres serveurs, procédez comme suit :
Le fichier de journalisation des modifications de Divalto.ini doit être commun aux différents serveurs TSE. Créez un répertoire partagé (avec accès complet) sur un serveur. Par exemple, créez le répertoire Installlog (attention : TROIS L) sur le serveur de données (commun à tout le monde) et partagez-le sous le nom de partage « Installlog ».
Copiez-y le contenu du répertoire /Divalto/Installlog d'un des serveurs d'application.
Sur chaque serveur d'application, dans le répertoire /Divalto/Installlog, créez le fichier texte Indirection.txt et garnissez-le avec une ligne indiquant le nom du chemin d'accès Windows au répertoire partagé. Par exemple //ServeurData/Installlog
Il faut impérativement donner l'autorisation de lecture/écriture pour tous les utilisateurs au répertoire Installlog. Attention : sur le réseau, il y a deux niveaux : les droits de partage et les droits utilisateur. Il faut que tous les utilisateurs puissent lire, écrire et créer des fichiers.
Utilisation de la base de registres de Windows
Harmony stocke des paramètres dans la base de registres, notamment les positions et les tailles des fenêtres, l'ordre et la largeur des colonnes des objets tableau. Ces informations sont liées à l'utilisateur.
Installation d'Harmony Web
Architecture Harmony Web
Une session Web est activée lorsqu'une page d'extension .aspx est soumise depuis le Web (.asmx pour un service Web). La réception de cette page est assurée par le gestionnaire de services Internet (IIS) de Microsoft. Son « exécution » nécessite l'installation du Framework .Net de Microsoft.
Le service Divalto Agent Diva doit également s'exécuter (il est lancé automatiquement au démarrage de l'ordinateur). Il a pour mission de lancer et de surveiller les programmes Harmony Diva lorsque des sessions ou des services Web sont activés.
Pour faciliter l'installation de vos serveurs Harmony Web, Divalto fournit un répertoire « exemple » contenant en particulier :
Une page aspx générique qui peut être librement dupliquée et renommée.
Des fichiers de configuration « standard ».
Les dll (assembly .net) nécessaires au dialogue avec les programmes Diva.
Une mini-application (HelloWorld) permettant de réaliser un test de premier niveau.
Installation du serveur Web IIS
Les applications Harmony Web s'exécutent sur un ordinateur serveur Web, sur lequel doivent être installés les éléments suivants :
Versions minimales du système d'exploitation : Windows XP-PRO (avec le service pack 2), Windows 2003 serveur.
Serveur IIS de Microsoft, version 5.1 minimum.
Framework .Net 4.0 de Microsoft minimum.
Remarques :
Il est conseillé d'installer IIS avant le Framework .Net. Si le Framework est déjà présent au moment d'installer IIS, voir plus loin la remarque sur la commande aspnet_regiis –i.
Si IIS est installé, les Outils d'administration du Panneau de configuration doivent afficher l'icône suivante :
Pour installer IIS
Pour installer le composant IIS de Windows, allez dans le Panneau de configuration, Ajout/Suppression de programmes, Ajouter ou supprimer des composants Windows et sélectionnez le composant "Services Internet (IIS)".
Lors de l'installation de IIS, installez impérativement la fonctionnalité ASP.NET.
Lorsque IIS est installé, tous les paramétrages qui le concernent (voir rubrique Création d'une application IIS sur le serveur Web) s'effectuent par le Gestionnaire des Services Internet (IIS), accessible depuis le panneau de configuration.
Pour installer le Framework
Le Framework (version 4.0 minimum) peut être téléchargé sur le site de Microsoft.
Pour savoir s'il est déjà installé, consultez le Panneau de configuration, Ajout/Suppression de programmes ou vérifiez l'existence du répertoire Windows\Microsoft.NET\Framework\v4xxxx (v4 correspond ici à la version 4).
Vérification de la prise en charge des pages aspx par le serveur
Pour qu'une application Harmony Web fonctionne, il faut que le serveur Web prenne en charge les pages aspx. Sur la page d'accueil du gestionnaire des services Internet (IIS), double-cliquez sur le choix "Mappages de gestionnaires" (zone IIS). Vérifiez que l'extension .apsx est présente et active.
Si l'extension .aspx n'apparaît pas (ce qui arrive lorsque IIS est installé après le Framework .Net), il faut utiliser la commande aspnet_regiis :
Menu Démarrer à Exécuter à cmd
Sous la console de commandes : cd c:\windows\http://microsoft.net \framework\v4.0.30319 aspnet_regiis –i Remarque : le répertoire v4.0.30319 est donné à titre indicatif ; il représente la version du Framework qui servira de version « par défaut ».
Service IIS
IIS tourne sous la forme d'un service qui peut empêcher de renommer ou déplacer des répertoires, si ces derniers sont pointés par des répertoires virtuels. La solution pour pallier cette difficulté consiste à arrêter momentanément le serveur Web. Pour cela, stoppez le service de Publication World Wide Web depuis le gestionnaire de services (Panneau de configuration à Outils d'administration à Services).
Création d'une application IIS sur le serveur Web
Pour qu'une page (fichier .aspx, .asmx ou .html) de votre serveur soit accessible depuis le Web, il faut créer une application IIS 32 bits pointant le répertoire contenant cette page. On crée ainsi un répertoire virtuel, alias d'un chemin dans l'arborescence des fichiers du serveur.
Exemple : Pour accéder à votre application via l'URL http://www.monserveur.fr/magasin/commande.aspx, créez sur le serveur une application IIS nommée "Magasin" et pointant (par exemple) le répertoire "c:\Divalto\Internet\WebServeur" ; placez dans ce répertoire la page Commande.aspx (créée à partir de la page générique fournie par Divalto).
Pool d'applications IIS
Une application IIS appartient toujours à un pool d'applications. Il est possible de créer son propre pool d'applications ou utiliser l'un des pools proposés par Windows :
Configurer le pool d'applications
Cliquez sur la ligne Pools d'applications dans l'arbre des Connexions. Dans la fenêtre Pools d'applications (à droite de l'écran), sélectionnez le pool choisi pour votre application puis éditez ses paramètres avancés. Les options suivantes sont impératives :
Activer les applications 32 bits (si votre système Windows est un système 64 bits) : True.
Mode Pipeline géré : Integrated (Intégré).
Version du .Net Framework : 4.0 minimum.
Identité : LocalSystem.
Créer l'application IIS
Développez la branche de l'arbre correspondant au site Web souhaité (remarque : sous certains systèmes, il ne peut exister qu'un seul site Web, nommé "Default Web Site" - "Site Web par défaut").
Cliquez avec le bouton droit de la souris sur le nom du site et sélectionnez le choix du menu "Ajouter une application..." :
Attention : il est impératif de créer une "Application" et non pas un "Répertoire virtuel". Si vous avez créé par erreur un répertoire virtuel, vous pouvez toutefois le convertir en application (clic droit sur le répertoire, choix "Convertir en application").
Entrez le nom de l'alias (Magasin dans notre exemple), pointez le répertoire physique (c:\Divalto\Internet\WebServeur dans notre exemple) qui contiendra la page aspx (Commande.aspx dans notre exemple) et spécifiez le pool d'applications choisi :
Remarque : Vous pouvez créer autant d'applications IIS que vous le souhaitez.
Configuration du site Web
Paramètres IIS
Il est possible de paramétrer un site Web IIS par l'intermédiaire du fichier Web.Config situé au même niveau que la page aspx. Deux paramètres particuliers de Web.Config (au format Xml) :
CustomErrors Ce paramètre permet de configurer la gestion des erreurs. Il est possible de spécifier une page à envoyer au client pour chaque type d'erreur (pour plus de précisions, voir les commentaires qui se trouvent dans le fichier).
SessionState / Timeout Ce paramètre permet de préciser le délai au terme duquel une session inactive est stoppée. Lorsque le serveur arrête une session, le programme Diva est automatiquement interrompu.
SessionState / cookieless
Ce paramètre indique que le numéro de session géré par IIS est soit transféré sous forme de cookie, soit transféré dans les paramètres de l'URL. La valeur par défaut est false ; attention, dans ce cas, rien ne fonctionne si le navigateur n'accepte pas les cookies. Voir Tester si le navigateur accepte les cookies .
Vous trouverez la description détaillée des paramètres de configuration IIS à l'adresse suivante : Technical documentation
Paramètres Harmony
Le chapitre [Internet] de Divalto.ini peut contenir les paramètres suivants :
XwebVisible=
0 | La fenêtre du programme Diva est cachée. Le programme ne doit en aucun cas faire d'entrée clavier. Ses éventuels affichages sont « perdus ». |
1 | La fenêtre du programme Diva est ouverte en mode normal. Si le programme effectue des affichages, ils seront visibles à l'écran. Ce paramètre peut être positionné en phase de mise au point, le programme pouvant alors interagir avec le bureau. Attention : pour cela, il faut que le service Divalto Agent Diva soit autorisé à interagir avec le bureau. |
Nav_Debug= Ce paramètre permet de spécifier le navigateur à utiliser pour le débogage depuis Xwin. Par défaut, Xwin lance le navigateur déclaré par défaut sur votre ordinateur. Si vous désirez déboguer votre application avec un autre explorateur, spécifiez ici le chemin complet d'accès à ce dernier. Remarque : Xwin lance le navigateur en lui passant le nom de la page aspx en paramètre sur la ligne de commande, mais certains navigateurs n'acceptent pas ce paramètre. Si la page aspx ne s'affiche pas, indiquez l'URL de votre page aspx comme page de démarrage du navigateur.
Installation de services Web
Comme les applications Harmony Web, les services Web Diva s'appuient sur le serveur IIS et le Framework .Net de Microsoft (pour leur installation, voir la rubrique Installation du serveur Web IIS).
Le principe des répertoires virtuels IIS reste également valable.
Installer les services Web Diva consiste simplement, au niveau de IIS, à créer un répertoire virtuel pointant le répertoire Divalto\Internet\WebServiceDiva (qui peut être déplacé et/ou renommé).
Attention : Les services Web démarrent toujours sous le compte utilisateur $WEBSERVICE. Ce compte doit donc toujours exister dans le fichier Harmony des utilisateurs.
Exemple :
IIS : Alias = servicediva --> répertoire = C:\Divalto\Internet\WebServiceDiva
L'URL à spécifier pour accéder aux services est alors : http://www.monserveur.fr/servicediva/WebServiceDiva.asmx
Remarque
Pour lancer les services web sous un autre compte que le compte de l'Agent diva, voir[ Choix du compte utilisateur Windows pour les programmes Web|#Top_of_Choix_du_compte_utilisate].
Environnements
La gestion des environnements est prise en compte par les services Web. Pour cela, il convient de créer une page asmx d'accueil pour chaque environnement :
Dupliquer le répertoire \divalto\Internet\WebServiceDiva dans un autre répertoire du serveur IIS.
Créer une application pointant sur ce répertoire.
Créer un fichier DivaltoEnv.txt par répertoire, contenant la balise <ENV> au format Hmp. Exemple : <env>PROD
Les services résidents travaillent pour un environnement donné lors de leur chargement initial.
Choix du compte utilisateur Windows pour les programmes Web
Par défaut, le service Divalto Agent Diva s'exécute sous le compte système local (voir Développement d'applications Web : paramétrages complémentaires ).
Il est conseillé de laisser le service Divalto Agent Diva sous ce compte. Mais cela implique que les programmes Diva lancés par ce service tournent également sous ce compte et, de fait, que les programmes Diva ne peuvent pas envoyer de mails à travers l'interface Mapi, cette dernière ne fonctionnant que pour un compte utilisateur.
Pour permettre à un programme Web (ou à un service Web) d'émettre des mails, il faut paramétrer le service Divalto Agent Diva pour que les programmes Diva lancés s'exécutent sur un compte utilisateur « standard ».
Méthode
Modifier le fonctionnement du service Divalto Agent Diva pour que celui-ci exécute les programmes et les services sous un compte utilisateur Windows.
Programmes Web. Divalto Agent Diva exécutera les programmes Diva sous le compte utilisateur Windows précisé dans la page aspx (parametre <user>). A défaut, le programme sera lancé sous le compte $WEB.
Services web. Le compte $WEBSERVICE est toujours utilisé.
Attention : ce fonctionnement du service Divalto Agent Diva n'est pas activé par défaut. Pour le mettre en route, il faut ajouter un paramètre à la base de registre (voir ci-dessous).
Mise en route
Paramétrage
Pour activer le lancement des programmes sous un compte Windows, ajoutez, par xDivaltoMajIni, au chapitre [Internet], les clés suivantes :
[Internet] WebLogon=1 ServiceWebLogon=1
WebLogon concerne les programmes web, ServiceWebLogon les services web.
Une fois ce paramétrage effectué, arrêtez puis relancez le service Divalto Agent Diva.
Création de l'utilisateur Harmony
Par l'utilitaire Xlog1.dhop (Harmony.dhop à Paramétrage à Gestion des utilisateurs), créez un utilisateur Harmony avec un mot de passe.
Pour les Services Web, le compte à créer doit être $WEBSERVICE.
Par l'utilitaire Xlog.dhop, vérifiez que l'utilisateur et son mot de passe sont corrects.
Création de l'utilisateur Windows
Lancez le choix Panneau de configuration à Outils d'administration à Gestion de l'ordinateur et créez un nouvel utilisateur par le choix Utilisateurs et groupes locaux : Utilisateurs.
Cet utilisateur doit avoir le même nom et le même mot de passe que l'utilisateur Harmony créé plus tôt.
Pour les Services Web, le compte à créer doit être $WEBSERVICE.
Paramétrage d'Outlook pour le nouveau compte
Ouvrez une session sur le compte que vous venez de créer, lancez le programme Outlook puis ajoutez un service pour l'émission du courrier. Vérifiez que vous pouvez émettre et recevoir des mails.
Remarques :
Pour que l'envoi de messages soit possible sans que le logiciel Outlook soit ouvert dans une session, Outlook 98 et Outlook 2000 doivent être configurés pour le service «Société ou Groupe de travail». Pour vérifier la configuration, il faut cliquer sur l'élément de menu Aide d'Outlook puis sélectionner À propos de Microsoft Outlook : la mention "Société ou groupe de travail" doit apparaître. Si cette option n'est pas active :
Outlook 98 : relancez l'installation d'Outlook 98 en exécutant le choix Ajouter/supprimer les programmes du Panneau de configuration. Sélectionnez «Outlook 98» puis cliquez sur Ajout/suppression de programmes. Dans la boîte de dialogue «Options du service de messagerie», sélectionnez «Société ou groupe de travail».
Outlook 2000 : dans le choix du menu Outils, sélectionnez Options, onglet Remise du courrier puis cliquez sur le bouton Reconfigurez la remise du courrier… et sélectionnez l'option «Société ou groupe de travail».
Outlook 97 et Outlook 2002 n'intègrent pas ce concept de service «Société ou Groupe de travail».
Choix de l'environnement pour les services web
Si un même serveur héberge plusieurs entités utilisant les services web, il faut pouvoir préciser dans quel environnement le service web doit s'exécuter.
Pour mettre en place les environnements, il convient de créer une page asmx d'accueil pour chaque environnement. Pour cela :
Dupliquer le répertoire divalto/Internet/WebServiceDiva pour avoir autant de répertoires d'accueil que d'environnements.
Dans IIS, créer de nouvelles applications pointant sur ces répertoires (avec les mêmes caractéristiques que l'application WebServiceDiva).
Dans chacun de ces répertoires créer un fichier DivaltoEnv.txt qui contient l'environnement à utiliser (format Hmp) <env>xxxxx (xxxxx = le nom de l'environnement).
ATTENTION : en cas de mise à jour de version d'Harmony, il faut mettre à jour tous les répertoires d'accueil.
Remarque :
Les services résidents travaillent pour un environnement donné lors de leur chargement initial.
Pour les services web résidents, le nombre de tâches défini par WebServicesSizePool correspond à un nombre de tâches par environnement. Voir "Services web résidents" dans la documentation des Services Web.
Impersonnation des services Web d'Harmony
Les services Web peuvent s'exécuter sous un compte utilisateur particulier. Cela permet éventuellement de cloisonner l'exécution de différents services Web sur le même serveur. Il faut pour cela mettre en œuvre :
Des URL différentes pour les différents services Web.
Un environnement différent pour chacun des services.
Un fichier des actions par environnement, qui figurera dans les chemins implicites propres à cet environnement.
Un compte d'utilisateur de Windows pour l'exécution des programmes Diva. Cette dernière fonctionnalité est mise en œuvre par de nouvelles balises dans le fichier DivaltoEnv.txt situé dans le répertoire de la page asmx : la balise <user> permet d'indiquer le compte, la balise <password> son mot de passe. Exemple : <Env>ERP211a<user>Compta<password>qwerty
Développement d'applications Web : paramétrages complémentaires
Pour développer une application ou un service Web et bénéficier du débogueur de Xwin :
Le serveur Web doit être installé sur le même ordinateur que Xwin.
Paramétrage complémentaire du navigateur. Si vous utilisez un serveur Proxy pour accéder à Internet, il faut impérativement préciser au niveau de votre navigateur que ce serveur Proxy ne doit pas être utilisé pour résoudre les adresses locales. Pour Internet Explorer, le paramétrage se fait comme suit : Menu Outils à Options Internet Onglet Connexions, bouton Paramètres réseau Cochez la case « Ne pas utiliser de serveur proxy pour les adresses locales ».
Création d'un site Harmony Web
Par la suite, nous nommerons Base le répertoire de base de votre application (celui pointé par le répertoire virtuel IIS associé). Pour créer un nouveau site :
Copiez le contenu complet du répertoire Divalto/Internet/WebServeur dans le répertoire Base.
Dans Base, placez ensuite tous les fichiers .html (référencés par les « panels html ») utilisés dans les masques de votre application. Dans Base/img_style, placez toutes les images (.gif, .jpeg, …) fixes (bitmaps et boutons graphiques déclarés dans la feuille de styles) utilisées dans les masques de votre application. Dans Base/<image>, placez toutes les images (.gif, .jpeg, …) variables (bitmaps et boutons graphiques variables) utilisées dans les masques de votre application. <image> représente le nom du dossier référencé dans le paramètre « Répertoire » des propriétés des objets concernés dans Xwin. Remarque : il est possible de référencer dans un masque un nombre quelconque de dossiers d'images (chaque dossier devant bien entendu recevoir les images qui le concernent).
Renommez le fichier WebApplic.aspx (donnez-lui le nom qui devra figurer dans l'URL permettant de charger l'application depuis le navigateur Web).
Editez le contenu du fichier renommé (avec le bloc-note par exemple) et modifiez le nom du programme Diva à lancer et le nom de l'utilisateur Divalto sous lequel tournera l'application (figurés ici en caractères italiques gras) : <asp:Label id="parametres" runat="server" Visible="False"><program>testweb.dhop<user>$WEB</asp:Label> Un troisième paramètre peut être ajouté pour spécifier le chemin du fichier Xlogf.dhfi à utiliser pour rechercher l'utilisateur Divalto (utile en mode ASP). Exemples : … <user>DEMO<XlogServer>//nom_de_serveur/divalto/societeUn … … <user>DEMO<XlogServer>/divalto/societeDeux … (recherche locale au serveur Web) Voir également : Choix du compte utilisateur Windows pour les programmes Web.
Pour des raisons de sécurité, Windows interdit par défaut la saisie par l'utilisateur des caractères "<" et ">" dans un champ ou dans un texte multi-lignes (car ces caractères servent de délimiteurs dans un source HTML). Pour éviter un arrêt brutal du programme, le fichier .aspx livré en standard contient sur la première ligne (<%@ Page ...) le paramètre validateRequest="false" qui permet de passer outre à cette interdiction. Mais attention, la présence de ce paramètre peut constituer une faille de sécurité : il suffit de le retirer du fichier .aspx pour retrouver le fonctionnement par défaut de Windows.
Remarques :
Lorsqu'un utilisateur soumet la page aspx dans son navigateur, le programme Diva correspondant est lancé en utilisant les chemins implicites et les droits de l'utilisateur spécifié dans cette page. Il n'y a aucune obligation quant aux répertoires d'installation des objets et des fichiers Harmony propres à l'application, pourvu que les chemins implicites de cet utilisateur permettent d'y accéder. Veillez donc à déclarer cet utilisateur dans la liste des utilisateurs de votre application Divalto ou dans la liste des utilisateurs d'Harmony (Xlog1.dhop) et à correctement paramétrer ses chemins implicites et droits d'accès.
Tout comme il est possible de créer plusieurs répertoires virtuels IIS, vous pouvez créer plusieurs sites Web sur un même serveur.
Schéma récapitulatif des répertoires
Tests de premier niveau
Nous supposerons ici que vous avez nommé Applic le répertoire virtuel IIS. Sur votre serveur et dans votre navigateur :
Appelez la page standard d'erreur http://localhost/Applic/erreursession.html. Ceci permet de vérifier qu'une simple page html s'affiche correctement.
Appelez la page http://localhost/Applic/helloworld.aspx. Ceci permet de vérifier qu'une application Harmony Web simple tourne correctement. Attention, sous Windows XP, le service pack 2 doit être obligatoirement installé : en son absence, ce test provoque un plantage.
En cas d'erreur
Lors d'une tentative d'affichage d'une page aspx, un problème de droit d'accès peut entraîner une erreur du type : « Impossible de charger la DLL 'dhx2yweb.dll' : Le module spécifié est introuvable. (Exception de HRESULT : 0x8007007E) »
(Cf. le site Microsoft http://support.microsoft.com/kb/332167 ; chapitre <Configure Sub-Authentication on an IIS 6.0 Upgrade in Worker Process Isolation Mode>, point 2 : Exécuter tous les processus de travail qui utilisent l'authentification anonyme sous l'identité du système local).
La solution consiste à reconfigurer la propriété Identité du modèle de processus dans les paramètres avancés du pool d'applications : utiliser le compte LocalSystem (système local) plutôt que NetworkService (service réseau).
Installation d'un site Web multilingue
Les applications Web peuvent être traduites en langue étrangère (voir le livre du manuel de référence intitulé "Traduction").
Pour que la traduction soit bien mise en oeuvre :
L'exécuteur Diva du programme Web doit connaître le chemin d'accès au fichier des langues. Ce chemin est précisé dans la base de registre (clé "CheminLangues" du sous-chapitre Divalto.ini).
Dans le cas d'une application Web, l'exécuteur Diva est lancé par l'agent Diva (service Divalto DhsDivaAgent). Il en résulte qu'il tourne par défaut sous le compte "Système local" (et non pas, comme habituellement, sous le compte de l'utilisateur).
Les programmes qui tournent sous le compte "Système local" ne lisent pas le chapitre HKEY_CURRENT_USER de la base de registre mais le chapitre HKEY_USERS/.DEFAULT.
Il faut donc renseigner le chemin des langues dans ce dernier chapitre. Pour ce faire :
Appelez l'utilitaire xDivaltoMajIni.
Ouvrez le menu Lecture.
Sélectionnez le choix Dans la base de registre de l'utilisateur "Compte système local".
Ajoutez la clé "CheminLangues".
Tester si le navigateur accepte les cookies
Pour tester si le navigateur accepte les cookies, vous pouvez insérer du code JavaScript dans votre page aspx. Ce code crée un cookie et vérifie si la création a fonctionné.
Exemple
<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="DhXwebForm.WebForm1" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>WebForm1</title>
<meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
<meta content="C#" name="CODE_LANGUAGE">
<meta content="JavaScript" name="vs_defaultClientScript">
<meta content="http://schemas.microsoft.com/intellisense/ie5"
name="vs_targetSchema">
<LINK href="style/style.css" type="text/css" rel="stylesheet">
</HEAD>
<SCRIPT>
function testCookie(){
var checkCookie = 'checkCookie' + (new Date().getTime());
document.cookie = checkCookie + '=cookieValue';
var yesCookie = document.cookie.indexOf(checkCookie) != -1;
if (yesCookie){
alert("Votre navigateur supporte les cookies");
}else{
alert("Votre navigateur ne supporte pas les cookies");
}
deleteCookie(checkCookie);
}
function deleteCookie (cookieName) {
var expire = new Date();
document.cookie = cookieName + "=" + "; expires=Thu, 01-Jan-70 00:00:01 GMT" +
"; path=/";
}
</SCRIPT>
<body MS_POSITIONING="GridLayout">
<FORM id="form1" name="form1" method="post" runat="server">
<asp:Label id="parametres" runat="server"
Visible="False"><program>commande.dhop<user>demo</asp:Label>
</FORM>
</body>
<SCRIPT>
testCookie();
</SCRIPT>
</HTML>