Complément Office

Prérequis

Le complément Office est compatible avec les versions de Microsoft Office 2007, 2010, 2013, 2016 et 2019.

Attention

Ce module ne fonctionne pas avec Outlook de Microsoft Office 2007.

L’installation sur le poste client nécessite des droits d’administrateur (inscription de clés dans le registre HKEY_CURRENT_USER).

Le complément nécessite sur le poste de l’utilisateur (cf. Poste client) les composants suivants :

  • Microsoft .NET Framework 4.5 (ou supérieur)
  • Visual Studio 2010 Tools pour Office Runtime: Téléchargement

Paramétrage sur le serveur MultiGest

Serveur FTP

Les documents sont transmis au serveur par le complément Office via le protocole FTP. Il est donc nécessaire d’installer un serveur FTP (Exemple : FileZilla Server).

Les paramétrages nécessaires sur le serveur FTP sont :

  • Création d’un utilisateur pour se connecter au serveur FTP (Nom d’utilisateur, mot de passe – Exemple : tftp/tftp)
  • Création d’un répertoire partagé bureautique accessible par cet utilisateur. Exemple C:\GEDdonnées\TempWord)

Ce répertoire partagé doit correspondre au répertoire temporaire dans lequel est déposé les éditions bureautiques (répertoire défini dans le fichier de configuration « convbur.ini » présent dans le répertoire « [INSTALL_DIR]\MultiGest\bin\pdfx ».

Contenu du fichier « MultiGest\bin\pdfx\convbur.ini ».

[TEMPORAIRE]
CHEMIN=[CHEMIN DU REPERTOIRE TEMPORAIRE BUREAUTIQUE]
Exemple : CHEMIN=C:\GEDdonnées\TempWord

Attention

Le Complément Office ne peut pas être utilisé avec un serveur FTP en mode sécurisé (File Transfer Protocol Secure-FTPS).

Services Web MultiGest

Le complément Office utilise les Services Web de MultiGest, il est donc nécessaire que les Services Web SOAP soient activés dans la configuration de PHP (php.ini).

Pour ces Services Web, il est également nécessaire une modification du fichier de configuration « webserveur.ini » présent dans « [INSTALLDIR]/MultiGest/bin ».

La section [INTERCO] doit être ajoutée si elle n’est pas déjà présente.

[INTERCO]
PORT=8082

Virtual Host Apache

Le connecteur Office utilise l’application MultiGest Web pour fonctionner : indexation de documents et ouverture de MultiGest. L’accès à MultiGest pour le connecteur Office se fait sur le Virtual Host d’Apache afin de ne pas être en conflit avec l’accès standard à MultiGest. Pour ceci, il est nécessaire de:

Déterminer un répertoire des sessions PHP dédié au connecteur Office

Modifier le Virtual Host d’Apache pour créer un accès au connecteur Office.

Créer un répertoire de session PHP

Dans le répertoire d’installation de PHP, créer un répertoire « tempoffice » s’il n’est pas présent à partir de l’explorateur Windows.

Création d’un Virtual Host pour le complément Office.

Dans le fichier de configuration du serveur Web Apache, il est nécessaire de rajouter un nouveau « Virtual Host » qui pointe sur le répertoire « Webserveur » présent dans [INSTALL_DIR]/MultiGest. Ce nouveau Virtual Host sera utilisé pour le complément Office.

Ouvrir le fichier de configuration « httpd-virtualhosts.conf » présent dans le répertoire conf\extra  du répertoire d’installation d’Apache.

La figure suivante montre une configuration de base pour ce fichier dans un serveur Apache 2.4 :

Listen 8083
<VirtualHost *:8083>
    DocumentRoot "C:\GED\MultiGest\Applis\webserveur"
    ServerAlias *:8083
	DirectoryIndex index.php	
	<Directory "C:\GED\MultiGest\Applis\webserveur">
		Options -Indexes +FollowSymLinks
		AllowOverride None
		Require all granted
	</Directory>
		<IfModule mod_deflate>
		SetOutputFilter DEFLATE
		DeflateCompressionLevel 9
	</IfModule>
	<Location />
		AddOutputFilterByType DEFLATE text/plain
		AddOutputFilterByType DEFLATE text/xml
		AddOutputFilterByType DEFLATE text/html
		AddOutputFilterByType DEFLATE text/css
		AddOutputFilterByType DEFLATE text/gif
		AddOutputFilterByType DEFLATE text/jpeg
		AddOutputFilterByType DEFLATE text/png
		AddOutputFilterByType DEFLATE image/svg+xml
		AddOutputFilterByType DEFLATE application/xhtml+xml
		AddOutputFilterByType DEFLATE application/xml
		AddOutputFilterByType DEFLATE application/rss+xml
		AddOutputFilterByType DEFLATE application/atom_xml
		AddOutputFilterByType DEFLATE application/x-javascript
	</Location>
	<ifModule mod_expires>
		ExpiresActive On
		ExpiresDefault "access 1 month"
		ExpiresByType text/html "access 1 month"
		ExpiresByType image/gif "access 1 month"
		ExpiresByType image/jpeg "access 1 month"
		ExpiresByType image/png "access 1 month"
		ExpiresByType text/css "access 1 month" 
		ExpiresByType text/javascript "access 1 month"
		ExpiresByType application/x-javascript "access 1 month"
	</ifModule>
	<ifModule mod_headers>
		<filesMatch "\\.(ico|flv|jpg|jpeg|png|gif|swf)$">
		   Header set Cache-Control "max-age=2592000, public"
		</filesMatch>
		<filesMatch "\\.(css)$">
		   Header set Cache-Control "max-age=604800, public"
		</filesMatch>
		<filesMatch "\\.(js)$">
		   Header set Cache-Control "max-age=216000, private"
		</filesMatch>
		<filesMatch "\\.(xml|txt)$">
		   Header set Cache-Control "max-age=216000, public, must-revalidate"
		</filesMatch>
		<filesMatch "\\.(html|htm|php)$">
		   Header set Cache-Control "max-age=1, private, must-revalidate"
		</filesMatch>
	</ifModule>
	php_value session.save_path "C:/GED/MultiGest/php5630/tempoffice"
</VirtualHost>

Les paramètres à remplacer sont :

PORT : port Apache dédié à cet accès par le connecteur Office.

Ici pour l’exemple c’est le port 8083.

CHEMIN WEBSERVEUR : Chemin du répertoire Webserveur présent dans le répertoire d’installation.

Ici pour l’exemple c’est C:\GED\MultiGest\Applis\webserveur

CHEMINPHPTEMP : Chemin du répertoire « tempoffice » des sessions PHP.

Ici pour l’exemple C:\GED\MultiGest\php5612\tempoffice

Une fois ce paramétrage réalisé, il faut redémarrer le service Apache.

Création d’un Virtual Host SSL pour le complément Office.

Dans le fichier de configuration du serveur Web apache, il est nécessaire de rajouter un « Virtual Host » qui pointe sur le répertoire « Webserveur » présent dans [INSTALL_DIR]\MultiGest.

Ouvrir le fichier de configuration « httpd-ssl-virtualhosts.conf » présent dans le répertoire conf/extra du répertoire d’installation d’Apache .

La figure suivante montre une configuration de base pour ce fichier dans un serveur Apache 2.4 en mode SSL :

Listen 443
<VirtualHost *:443>
    DocumentRoot "D:\MultiGest\webserveur"
	ServerName le Nom de la machine
    ServerAlias *:443
	DirectoryIndex index.php
	
	<Directory "D:\MultiGest\webserveur">
		Options -Indexes +FollowSymLinks
		AllowOverride None
		Require all granted
	</Directory>
	
	SSLEngine on
	SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL:RSA+SHA256:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256
#####A MODIFIER######
	SSLCertificateFile conf/ssl/votre_certificat.crt
	#SSLCertificateChainFile conf/ssl/votre_certificat_intermediaire.crt
	SSLCertificateKeyFile conf/ssl/votre_certificat.key
###### FIN DE MODIF #####
	<FilesMatch "\.(cgi|shtml|phtml|php3?)$">
		SSLOptions +StdEnvVars
	</FilesMatch>
	<Directory "D:/Programmes/Apache-2.4/cgi">
		SSLOptions +StdEnvVars
	</Directory>
	SetEnvIf User-Agent ".*MSIE.*" \
			 nokeepalive ssl-unclean-shutdown \
			 downgrade-1.0 force-response-1.0
	CustomLog logs/ssl_request_log \
			  "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
	
	<IfModule mod_deflate>
		SetOutputFilter DEFLATE
		DeflateCompressionLevel 9
	</IfModule>
	<Location />
		AddOutputFilterByType DEFLATE text/plain
		AddOutputFilterByType DEFLATE text/xml
		AddOutputFilterByType DEFLATE text/html
		AddOutputFilterByType DEFLATE text/css
		AddOutputFilterByType DEFLATE text/gif
		AddOutputFilterByType DEFLATE text/jpeg
		AddOutputFilterByType DEFLATE text/png
		AddOutputFilterByType DEFLATE image/svg+xml
		AddOutputFilterByType DEFLATE application/xhtml+xml
		AddOutputFilterByType DEFLATE application/xml
		AddOutputFilterByType DEFLATE application/rss+xml
		AddOutputFilterByType DEFLATE application/atom_xml
		AddOutputFilterByType DEFLATE application/x-javascript
	</Location>
	<ifModule mod_expires>
		ExpiresActive On
		ExpiresDefault "access 1 month"
		ExpiresByType text/html "access 1 month"
		ExpiresByType image/gif "access 1 month"
		ExpiresByType image/jpeg "access 1 month"
		ExpiresByType image/png "access 1 month"
		ExpiresByType text/css "access 1 month" 
		ExpiresByType text/javascript "access 1 month"
		ExpiresByType application/x-javascript "access 1 month"
	</ifModule>
	<ifModule mod_headers>
		<filesMatch "\\.(ico|flv|jpg|jpeg|png|gif|swf)$">
		   Header set Cache-Control "max-age=2592000, public"
		</filesMatch>
		<filesMatch "\\.(css)$">
		   Header set Cache-Control "max-age=604800, public"
		</filesMatch>
		<filesMatch "\\.(js)$">
		   Header set Cache-Control "max-age=216000, private"
		</filesMatch>
		<filesMatch "\\.(xml|txt)$">
		   Header set Cache-Control "max-age=216000, public, must-revalidate"
		</filesMatch>
		<filesMatch "\\.(html|htm|php)$">
		   Header set Cache-Control "max-age=1, private, must-revalidate"
		</filesMatch>
	</ifModule>
	php_value session.save_path "D:/Programmes/php5612/tempssl"
	
</VirtualHost>

Copier le Virtual Host SSL et modifier le en attribuant un autre port SSL pour le complément Office. Exemple de port SSL : 8443

Les paramètres à remplacer sont :

  • PORT SSL : mettre un port SSL Apache dédié à cet accès pour le complément Office. Exemple : 8443.
  • CHEMIN WEBSERVEUR : Chemin du répertoire Webserveur présent dans le répertoire d’installation.
  • CHEMINPHPTEMP : Chemin du répertoire « tempoffice » des sessions PHP.

Une fois ce paramétrage réalisé, il faut redémarrer le service Apache.

Poste client

Prérequis

Installer les composants cités ci-après si cela n’a pas été réalisé précédemment :

  • Microsoft .NET Framework 4.5 (ou supérieur)
  • Visual Studio 2010 Tools pour Office Runtime Téléchargement

Contenu du package de déploiement

Le package de déploiement est composé des éléments suivants :

Information

Le composant pour la version Office 2019 est la même que pour la version 2016.

Composants pour les versions « 2007 », « 2010 », « 2013 » et « 2016 ».

Composants communs dans le répertoire « Common »

Logs de l’installation.

« SetupMgestOffice.exe » pour le déploiment sur le poste client

Paramétrage du complément

Fichier de configuration

Le paramétrage du Complément Office s’effectue dans le fichier « MgestOfficeAddIn.config » qui se trouve dans le répertoire de la version du pack MsOffice.

Exemple : pour Office 2013 aller au répertoire du complément Office, Complément MultiGest Office\Common

Contenu du fichier « MgestOfficeAddIn.config » :

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <appSettings>
    <add key="Language" value="fr" />
    <add key="AdrMgest" value="http:// [IP ou DNS SERVEUR]:[PORT]" />
    <add key="ftpAdr" value="[ADRESSE FTP]" />
    <add key="ftpUser" value="[USER FTP]" />
    <add key="ftpPwd" value="[PASSWORD FTP]" />
    <add key="ftpPort" value="[PORT FTP]" /> //ex: port par default 21
  </appSettings>
</configuration>

Les paramètres à modifier sont les suivants :

  • IP ou DNS SERVEUR : IP ou DNS pour atteindre MultiGest.
  • PORT : port apache déterminé pour le complément Office (MultiGest Web)
  • ADRESSE FTP : adresse du serveur FTP précédemment installé
  • USER FTP : utilisateur FTP
  • PASSWORD FTP : mot de passe FTP
  • PORT FTP : port du serveur FTP

Fichier de configuration pour chaque complément

Il est nécessaire de modifier les fichiers config pour chaque application :

  • Word : MgestWordAddIn.dll.config
  • Excel : MgestExcelAddIn.dll.config
  • Outlook : MgestOutlookAddIn.dll.config

Contenu du fichier pour Word « MgestWordAddIn.dll.config» :

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <system.serviceModel>
        <bindings>
            <basicHttpBinding>
                <binding name="APIMultiGestBinding" />
            </basicHttpBinding>
        </bindings>
        <client>
            <endpoint address="http://[IP ou DNS SERVEUR]:[PORT]/Interconnexion/       SoapServer.php?className=APIMultiGest&style=rpc&styletype=encoded"
                binding="basicHttpBinding" bindingConfiguration="APIMultiGestBinding"
                contract="ServiceReference1.APIMultiGestPortType" name="APIMultiGestPort" />
        </client>
    </system.serviceModel>
</configuration>

Les paramètres à modifier sont les suivants :

  • IP ou DNS SERVEUR : IP ou DNS SERVEUR de MultiGest
  • PORT : port Apache déterminé pour le complément Office

Mode HTTPS

Lorsque le serveur GED est accessible par le biais du protocole HTTPS il est nécessaire de modifier les fichiers mentionnés ci-dessous :

Word : MgestWordAddIn.dll.config

Excel : MgestExcelAddIn.dll.config

Outlook : MgestOutlookAddIn.dll.config

La modification doit porter sur la balise « binding » la balise « security » comme suit :

<bindings>
            <basicHttpBinding>
                      <binding name="APIMultiGestBinding">
                                 <security mode="Transport">
                                            <transport clientCredentialType="None" />
                                  </security>
                       </binding>
            </basicHttpBinding>
</bindings>

Déploiement du complément

Le déploiement du complément s’effectue une fois le paramétrage effectué en « Exécutant en tant qu’administrateur » l’exécutable « SetupMgestOffice.exe » sur le poste client.

Les fichiers du package correspondant à la version MsOffice installé sur le poste utilisateur sont copiés dans le répertoire : « C:\Program Files\Microsoft Office\[VersionOffice]\ADDINS ».

L’installation du module Complément Office est terminée.