Le Webservice SQL de Logistics/Flex se base sur les données répliquées par le Module Synchro SQL dans la base de données de SQL Server afin de de fournir une réponse la plus rapide possible.

Cette façon de faire oblige le Webservice SQL, dans un premier temps, a fournir uniquement des requêtes de lecture de la base de données. Il est donc nécessaire dans le cas des requêtes d'écriture (ajout de commande, création de client ou autre modification de la base données) de travailler conjointement avec l’utilitaire SqlToDbf.

Dans le cas où un site utilise l'ancienne version du Webservice en DBF, il est possible de spécifier au Webservice existant que certaines requêtes doivent être traitées par la version SQL. Cette approche vous permet d'éviter d'interroger 2 Webservices différents.



Sur cette page:




Prérequis

L'installation du Webservice SQL nécessite obligatoirement les éléments suivants :

(tick) IIS disposant du rôle "Application Development"
(tick) Logistics/Flex avec Module Synchro SQL pour les versions 6.2 et inférieure et module FullSql pour les versions 7.0 et supérieure
(tick) Framework .NET 4.0
(tick) Information de connexion à une base de donnée générée par Logistics/flex sous SQL Server
(tick) Fichiers du Webservice SQL (Pour 6.2 et inférieure, Pour 7.0 et supérieure)

Optionnel
(tick) Webservice Tools (à télécharger ici) - Pour vous permettre de réaliser des tests sur le webservice
(tick) SqlToDbf (à télécharger ici) - Nécessaire dans le cas ou des écritures doivent être réalisées dans la base de données pour les version 6.2 et inférieure


Haut de page


Installation

1. Configuration de l'application pool

  1. Ajoutez l'Application Pool dans IIS.

    Il est obligatoire de créer un application pool par Webservice SQL et dossier Logistics/Flex.


  2. Dans le champ .NET Framework version, sélectionnez le .NET Framework 4.0.


  3. Modifiez l'Identity de l'application pool que vous venez de créer via le menu Advanced settings.

    Nous vous recommandons d'utiliser l'identity NetworkService ou un compte utilisateur.




    %windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i
    
    "c:\Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation\servicemodelreg" -i




2. Installation des fichiers du Webservice SQL

  1. Créez un répertoire et dé-zippez les fichiers du Webservice (Les fichier du Webservice sont à demander par mail au support Logistics).

    Dans cette documentation nous utiliserons le chemin : c:\inetpub\wwwroot\dossier_webserviceSQL



  2. Modifiez la sécurité du répertoire créé via l'onglet Securityde la fenêtre de propriété de ce dossier.

    1. Ajoutez l'utilisateur mentionner dans l'application pool.
    2. Ajoutez aux droits standard, les droits en écriture dans le dossier.

3. Installation & configuration du SQLTODBF

L'utilitaire SQLTODBF est utilisé pour reporter les modifications apportée sur la base de donnée SQL dans la base de données DBF utilisé par le programme, si le webservice est utilisé uniquement en lecture cette étape peut être ignorée

Le webservice exécute de manière automatique à intervalle réguliere cet utilitaire afin de reporter les ajout et modification de la base de données SQL vers le DBF

Prérequis
Installation

Dézipper l’exécutable dans un répertoire dont le compte qui est définit dans l'application pools dispose de droit de lecture, vous devrez indiquer le chemin de ce répertoire dans la clé SqlToDbfPath qui est à définir à l'étape Configuration du fichier Web.Config

Configuration

vous pouvez configurer divers paramètre pour l’exécution et le traitement exécuté par le SqlToDbf, les paramètres sont a ajouter dans les paramètre généraux du dossier client Logistics

ParamètreDescriptionValeur par défaut
WSSQL_TABLETOSYNCTable ou les modifications SQL sont à reprendre en DBF, les tables sont séparées par *DOCHEAD*DOCDET*CUST*PERS
WSSQL_SQLTODBF_TIMER

Délai en seconde que le webservice attend avant d'exécuté une nouvelle instance du SQLTODBF.

Si une instance est toujours en cours d’exécution l'appel est ignoré

10


Exécution manuelle 

Suivant votre environnement vous pouvez décider d'exécuter le SqlToDbf manuellement dans un scheduler par exemple 

Pour ce faire vous devez exécuter le SqlToDbf avec les paramètres suivant 

ParamètreDescriptionExemple de valeur
1Table à synchroniser"DOCHEAD*DOCDET*CUST*PERS"
2Chemin de l'installation data de logistics"c:/winbooks/data/logistics/"
3Nom du répertoire du dossier client"DEMOLOGISTICS_FR"

Gestion des erreurs

En cas d'erreur le programme génère un log par jour dans le dossier logistics sous la forme <date> error - sqltodbf.txt

Vous pouvez vérifier si les données sont bien renvoyée dans les table dbf en regardant si le champ SQLMODIF dans la base de données SQL est bien à 0.

4. Configuration du fichier Web.config

  1. Dans IIS, ouvrez le menu Application Settings


  2. Définissez les différents paramètres suivant le paramétrage de votre dossier


    Description des entrées de configuration 


    key

    value

    ConnexionStringSql

    Information de connexion à la base de données de SQL Server.
    De façon typique elle se constitue de la manière suivante :

    "Data Source=SERVER2008DEV;Initial Catalog=DEMO;User ID=sa;Password=1234"

    • Data Source : nom DNS du ou IP du serveur contenant la database sql.
    • Initial Catalog : nom de la base de donnée celle-ci est généralement la même que le nom du dossier dans Logistics/Flex.
    • User ID : nom de l'utilisateur SQL.
    • Password : password de l'utilisateur SQL.

    Serial

    Numéro de série du dossier Logistics/Flex.

    DataRootPath

    Chemin envoyé par le site web et utiliser par le Webservice DBF. 
    Ce chemin doit être indiqué pour le calcul de la clé applicative renvoyée par la fonction WSLOGIN.

    CompID

    Nom du dossier client dans Logistics/Flex.

    Debug

    Création de log par le Webservice pour le debuging.

    SqlToDbfPathChemin utilisé par l’utilitaire SqlToDbf. (pour version 6.2 et inférieure)
    SqlToDbfUserUtilisateur repris par le Webservice SQL pour lancer l'utilitaire SqlToDbf. Optionnel, utilisé dans les environnements très sécurisés. (pour version 6.2 et inférieure)
    SqlToDbfPasswordMot de passe de l'utilisateur repris par le Webservice SQL pour lancer l'utilitaire SqlToDbf. Optionnel, utilisé dans les environnements très sécurisés. (pour version 6.2 et inférieure)
    SqlToDbfDomainDomaine de l'utilisateur repris par le Webservice SQL pour lancer l'utilitaire SqlToDbf. Optionnel, utilisé dans les environnements très sécurisés. (pour version 6.2 et inférieure)







Vous pouvez également modifier le fichier Web.config via un éditeur de texte, et configurer les key de l'appSettings.

5. Création de l'application dans IIS

  1. Ajoutez une application dans IIS.



  2. Sélectionner l'application pool.

    L'Alias sera utilisé dans l'URL d'accès au Webservice.



  3. A partir de cette étape, vous pouvez tester si le webservice SQL est correctement lancé par IIS, via un navigateur web en tapant cette URL (n'oubliez pas d'adapter l'URL suivant votre paramétrage !) :

    http://127.0.0.1/MonDossier_WSSQL/ServiceWcf.svc?wsdl

    Dans l'URL de test, il faut indiquer l'Alias de l'application et non le nom du répertoire.



  4. Si l'installation est correcte, vous devriez avoir une réponse semblable à l'écran suivant dans votre navigateur web :

    Pensez aussi à vérifier la disponibilité du Webservice à l'extérieur et à rediriger les ports si nécessaire.


6. Configuration en HTTPS


Cette section est optionnelle et nécessite la modification du site hébergeant le webservice
elle nécessite également au minimum la version 1.1.0.2 du webservice

  1. Créez ou importer un certificat dans IIS dans le serveur




    Dans le cas d'un certificat autosigné, l'appel au webservice peut être perturbé car le certificat ne sera pas autorisé par l'ordinateur distant attaquant le webservice

    Pour vous permettre d'utiliser votre certificat, vous devez importer ce dernier dans l'ordinateur distant dans le magasin "Autorités de certification racines de confiance"


  2. Modifiez le Binding du site internet ou se situe le webservice


  3. Ajoutez le binding https pour toutes les adresse et spécifiez le certificat à utiliser pour cette connexion
     
  4. Si les modifications ne sont pas directement prisent en compte vous pouvez redémarrer l’ensemble d'ISS via la commande "IISRESET" dans le cmd de windows en mode administrateur.

    Dans certains environnements des modifications du fichiers web.config sont nécessaires. 
    Veuillez vous référé à la section "Problèmes et solutions" si vous êtes dans ce cas.


Haut de page


Test du Webservice SQL

Un programme est disponible pour vous permettre de réaliser des tests sur un webservice SQL.

Ce dernier est téléchargeable via ce lien : Programme de test du webservice à télécharger


Configuration des données de connexion



L'onglet "Config" vous permet de configurer et de tester la connexion au webservice.

Via le menu Config File, vous pouvez charger une configuration existante ou sauvegarder votre configuration actuelle


la section Login Options peut fonctionner de deux manières distinctes :

  • Si vous connaissez la clé partagée du webservice, vous pouvez directement remplir la clé partagée et vérifier la validité via le bouton "Validate Webservice"
  • Si un user et un mot de passe ont été définit vous pouvez les indiquer dans les champs prévu et réaliser une request wsLogin via le bouton "Get Webservice Key" pour récupérer la clé partagée


la clé doit être valide pour passer dans l'onglet Request



Exécuter une requête

Cette étape permet de procéder à l'envoi d’une requête wsrequest sur le webservice indiqué dans l'onglet configuration.

Il est possible d'exécuter des requêtes standard mais également des requêtes personnalisées venant d'un plug in.

Vous pouvez également sauvegarder et charger des request que vous avez réalisé.

Vous trouverez la documentation sur les requests standard en suivant ce lien 

Requête standard 



Sélectionnez le nom de la requête dans la liste déroulante, et ensuite remplissez les XML Header, Data et Footer avec les données souhaitées.

Lorsque les données sont complétées, exécutez la requête sur les webservices initialisés.

Le résultat de la requête ainsi que son temps d'exécution sont affichés dans la partie inférieure de l'onglet.


Requête personnalisée


Les requêtes personnalisées fonctionnent comme les requêtes standard sauf que vous devez indiquer le nom de votre requête au lieu de le sélectionner dans la liste déroulante une des propositions de requête.


Haut de page


Liaison avec le Webservice DBF

Cette section est optionnelle et elle est proposée uniquement pour les sites existants afin permettre une phase d'adaptation sans mise hors service du site.

Configuration du fichier wsFlex.ini

Ajouter les lignes suivantes dans la configuration de votre dossier contenu dans le fichier wsFlex.ini

Description des lignes :


key

value

WCF_URL

correspond à l'adresse du Webservice SQL.

XXXX_USEWCF

XXXX représente le nom d'une fonction du webservice. Les fonctions qui sont mentionnées de la sorte dans le fichier de configuration avec la valeur YES seront redirigées vers le Webservice SQL pour traitement, le Webservice DBF sert alors simplement d'intermédiaire.


Haut de page


Problèmes et solutions


Haut de page