Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

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

(tick) IIS diposant 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)

Optionnel

- 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(tick) Webservice Tools (à télécharger ici) - Pour vous permettre de réaliser des tests sur le webservicebase de données pour les version 6.2 et inférieure


Haut de page

...

Installation

1. Configuration de l'application pool

...

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'éxecuté exécuté une nouvelle instance du SQLTODBF.

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

10

...

  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 

    Advanced Tables - Table Plus
    enableSortingfalse


    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 :

    Panel
    bgColorwhite
    borderStyledashed

    "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.

...

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




    Warning
    titleCertificat autosigné

    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.

    Info

    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

...

Problèmes et solutions

  • Le webservice ne fonctionne pas en HTTPS malgré la configuration suivie

    Le fichier web.config fourni de base permet de gérer une connexion HTTPS sur la plupart des systèmes.
    Cependant dans certains environnements, des modifications doivent être apportées pour ajouter des spécifications de sécurité à la configuration initiale.

    Info

    Avant toute modification, pensez à sauvegarder votre fichier web.config


    Ouvrez votre fichier web.config via un éditeur de texte, la structure de ce fichier est semblable à un XML.

    Repérez le tag <system.serviceModel>

    Ajoutez le code suivant après le tag <system.serviceModel>

    Code Block
    languageyml
    <bindings>
       <basicHttpBinding>
          <binding name="TransportSecurity">
             <security mode="Transport">
                <transport clientCredentialType="None"/>
             </security>
          </binding>
       </basicHttpBinding>
    </bindings>


    Ajoutez le code suivant toujours dans la balise <system.serviceModel>

    Code Block
    languageyml
    <services>
       <service  name="WcfEcom.ServiceWCF">
          <endpoint address="" binding="basicHttpBinding" bindingConfiguration="TransportSecurity" contract="WcfEcom.IServiceWcf"/>
       </service>
    </services>


    Sauvegardez votre fichier et relancez l'application pool associé au webservice

    Vérifiez dans le ServiceWcf.svc?wsdl de votre webservice que les urls renseignées sont correcte et bien en https.


  • Le webservice ne répond pas à l'utilitaire de test ou retourne un message d'erreur vague.

    Vérifiez que vous avez activer Debug avec la valeur "true" dans l'application settings du webservice et qu'un répertoire log se soit créé dans le répertoire d'installation du webservice
    Vous pouvez consulter le log pour déterminer la source de l'erreur.
    Dans le cas ou aucun répertoire log n'est créé malgré l'option spécifiée vérifier les droits dans le répertoire ou se situe le webservice, ce répertoire doit disposer des droits suffisant pour le compte spécifié dans l'application pools
    Dans le cas ou vous rencontrez toujours des problèmes vérifiez que vous avez correctement effectuer votre installation.

  • Les données ajoutées ou modifiées via le webservice ne sont pas renvoyée vers le programme Logistics.

    Vérifiez si les données que vous avez spécifié se retrouve dans la base de données SQL avec le champ SQLMODIF à la valeur 1
    Si c'est bien le cas le problème se situe au niveau du SQLTODBF qui n'a soit pas réussis à reporter l'information dans la base de données DBF ou se dernier n'a pas pu être lancé via le webservice SQL
    Vérifiez dans le dossier du client si des fichier txt du type "20180718 Error - SqlToDbf" dans ce cas il s'agit de message d'erreur rencontré par le SqlToDbf, le contenu du log doit vous permettre de résoudre le problème.

    Dans le cas ou aucun log ne se trouve dans le dossier le mieux est de tester si le sqltodbf peut être correctement lancé et qu'il n'y a pas un problème de droit. pour se faire exécutez le SqlToDbf avec les paramètres suivant : 
    "nom_table1*nom_table2" "c:\logistics\Data\" "FOLDER"

    Si le programme c'est correctement exécuté et que les champs SQLMODIF à 1 des tables spécifiées sont bien repassé à 0 il s'agit d'un problème de droits dans la configuration de l'application settings ou dans d'un manque de droit pour le compte spécifié dans l'application pools ce qui empêche l’exécution du SqlToDbf automatiquement par le webservice.

    Si le programme c'est correctement exécuté mais qu'aucun record n'a été traité, vérifiez si aucun SqlToDbf ne se trouve dans le gestionnaire de tâche de windows et qu'aucun fichier SqlToDbf.working n'est présent, dans le ce cas supprimez le fichier et terminez le process du SqlToDbf pour son exécution et réessayez d’exécuter le SqlToDbf

    Si le programme ne s'exécute pas, veuillez vérifier le message reçu pour résoudre le problème, il est fort probable que les librairies virtual foxpro ne soient pas disponible sur la machine, vous pouvez résoudre ce problème en installant une workstation de Logistics.

    Si aucune données dans la table n'a de tag SQLMODIF n'est à 1 alors que des requests d'ajout ou de modification de données ont bien été envoyée au webservice veuillez vérifier les log du webservice afin de voir si aucun soucis n'ont été logué pendant l’exécution de la request

...