165 lines
7.9 KiB
Markdown
165 lines
7.9 KiB
Markdown
---
|
|
title: "GNA, Services & License Installation"
|
|
type: operation
|
|
sources:
|
|
- sources/archives/Installation_Services_Licence_WMS.md
|
|
related:
|
|
- architecture/overview.md
|
|
- concepts/erp-interface.md
|
|
- operations/first-deployment.md
|
|
- operations/deployment-existing-app.md
|
|
- operations/git-workflow.md
|
|
- operations/ugna-data-export.md
|
|
- operations/deploy-test-application.md
|
|
last_compiled: "2026-04-17"
|
|
---
|
|
|
|
# GNA, Services & License Installation
|
|
|
|
## Overview
|
|
|
|
Procédures d'installation et de gestion des **services adjacents** au WMS sur une VM de développement :
|
|
|
|
- **GNA** (Generic Notification Applications) — service de messagerie ERP ↔ WMS : sauvegarde GIT des scripts/XSD + réinstallation sur VM
|
|
- **Label Printer** — service d'impression d'étiquettes
|
|
- **Licence WMS** (EasySTS) — demande / import de la licence projet pour que la VM fonctionne au-delà de 7 jours
|
|
|
|
Le GNA est le composant qui porte la communication ERP (messages tels que `ROR`, `SOR`, `STV`, `SOF`…) — voir [erp-interface](../concepts/erp-interface.md) pour la sémantique fonctionnelle des messages.
|
|
|
|
Source : Confluence EasyWMS France — *Installation Services et Licence WMS* (v19, 15/04/2025).
|
|
|
|
## Service GNA
|
|
|
|
### Sauvegarder la configuration sur le GIT
|
|
|
|
À faire **à chaque fois qu'un script BOO est modifié**, pour que les changements soient disponibles aux autres devs après merge + pull.
|
|
|
|
#### Localisation du dossier `InstallApplications`
|
|
|
|
- **Installation manuelle** (ancien) → dossier dézippé lors de l'installation du GNA
|
|
- **Installation automatique** (nouveau) → **`C:\deploy\Prof.Serv.Deploy\InstallApplications`**
|
|
|
|
#### Exécution du script
|
|
|
|
```powershell
|
|
cd C:\deploy\Prof.Serv.Deploy\InstallApplications
|
|
.\GNAGetDataForGit.ps1
|
|
```
|
|
|
|
Le script **exporte les fichiers nécessaires à l'installation du GNA** (scripts BOO + sources XSD).
|
|
|
|
> ⚠️ Les XSD sont **composés à l'installation** à partir des fichiers du dossier `XSD_Source` de votre GNA.
|
|
>
|
|
> **Ne pas copier directement le XML du dossier `XSD` de votre GNA** — il serait pris comme "source" et recomposé avec les `XSD_Source` des autres applications, entraînant des **duplications de lignes**.
|
|
|
|
#### Exemple — composition du fichier SOF02
|
|
|
|
Le fichier final `C:\ProgramData\Mecalux\GnaService2015\XSD\SOF02.xsd` peut être composé de :
|
|
|
|
| Module | Chemin source |
|
|
|--------|--------------|
|
|
| EasyWMS | `XSD_Source\EasyWMS\Definitions\SOF02.xsd` |
|
|
| Deliveries | `XSD_Source\Deliveries\Extensions\EasyWMS\SOF02\ShippingOrderFinalizationType\SOF02.xsd` |
|
|
| VAS | `XSD_Source\ValueAddedService\Extensions\EasyWMS\SOF02\LineType\SOF02.xsd` |
|
|
|
|
#### Chemins GNA selon version des scripts de deploy
|
|
|
|
> ⚠️ Avec les nouvelles versions des scripts (GNA installé lors du deploy depuis le repository), le GNA **n'est plus installé au même endroit** qu'auparavant. Le script peut planter car il ne trouve pas les dossiers GNA.
|
|
|
|
**Solution** — modifier les chemins dans **`responses.xml`** du dossier `InstallApplications` :
|
|
|
|
```xml
|
|
<!-- Ancien chemin -->
|
|
<XSDPath>C:\ProgramData\Mecalux\GnaService2015\XSD</XSDPath>
|
|
<commsPath>C:\ProgramData\Mecalux\GnaService2015\standard_comms\Scripts2015</commsPath>
|
|
|
|
<!-- Nouveau chemin -->
|
|
<XSDPath>C:\Program Files\Mecalux\GnaService2015\XSD</XSDPath>
|
|
<commsPath>C:\Program Files\Mecalux\GnaService2015\standard_comms\Scripts2015</commsPath>
|
|
```
|
|
|
|
#### Destination sur le GIT
|
|
|
|
Récupérer le dossier GNA créé par le script et l'ajouter au GIT dans :
|
|
|
|
```
|
|
\services\GNA
|
|
```
|
|
|
|
Puis commit + push (cf. [git-workflow](git-workflow.md#3--commit-de-vos-modifications)).
|
|
|
|
### Réinstallation d'un GNA
|
|
|
|
Procédure à suivre si le GNA a déjà été installé sur la VM et doit être réinstallé (ex : changement de version, correction config).
|
|
|
|
1. Télécharger **`InstallApplication.zip`** depuis [la doc Mecalux](https://msscc.mecalux.com/documentation/documentation/master/EN/docs_downloads/services/gna.md) et le dézipper sur la VM
|
|
2. Récupérer le dossier **`\deploy\services\GNA`** du GIT du projet et le **copier dans le dossier dézippé**
|
|
3. Remplacer **`responses.xml`** par celui du dossier GNA et vérifier que l'URL de l'application `FromGIT` pointe sur le bon fichier
|
|
4. Créer un fichier **`GNA.zip`** contenant les dossiers suivants :
|
|
- `Config`
|
|
- `Scripts`
|
|
- `TaskDefinitions`
|
|
- `XSD`
|
|
5. Exécuter **en administrateur** le script :
|
|
```powershell
|
|
.\DeployCommsApps.ps1
|
|
```
|
|
Choisir l'option **"complete"**.
|
|
|
|
> En cas d'erreur : voir Confluence *Installation GNA — Exécution de l'installation*.
|
|
|
|
## Service Label Printer
|
|
|
|
Pour installer le service d'impression d'étiquettes, suivre la documentation dédiée :
|
|
**[Printer service et imprimante PDF : Installation et configuration](https://easywmsfrance.atlassian.net/wiki/spaces/EF/pages/5538376)** (non reproduite ici).
|
|
|
|
## <a id="license"></a>Licence WMS
|
|
|
|
Par défaut la VM fonctionne **7 jours**. Au-delà, la licence projet est requise.
|
|
|
|
### 1. Demande de licence
|
|
|
|
Faire une demande aux **chefs d'équipes** ou au **directeur technique** (en dernier recours) en leur fournissant la licence actuelle du projet, récupérable depuis :
|
|
|
|
```
|
|
https://<VotreVM>/EasySTS/License
|
|
```
|
|
|
|
Cliquer sur le bouton **"Export"** en bas de page pour en obtenir le fichier.
|
|
|
|
> Si personne n'est disponible côté France, faire une demande au support espagnol via la [documentation dédiée Confluence](https://easywmsfrance.atlassian.net/wiki/spaces/EF/pages/25690458).
|
|
|
|
### 2. Import de la licence
|
|
|
|
Une fois la licence reçue :
|
|
|
|
1. Se connecter à **`https://<VotreVM>/EasySTS/License`**
|
|
2. L'ajouter dans **"Submit license"**
|
|
|
|
La date de validité est mise à jour dans **EasySTS**.
|
|
|
|
## Règles pratiques
|
|
|
|
- **GIT commit du dossier `\services\GNA`** à chaque modification de script BOO — sinon les autres devs travaillent sur une version obsolète.
|
|
- **Ne jamais pousser le XML composé** de `XSD/` — uniquement les fichiers de `XSD_Source` (sinon duplications).
|
|
- **Vérifier les chemins `responses.xml`** si le script d'export plante (nouvelle location `C:\Program Files\...`).
|
|
- **Toujours dézipper `InstallApplication.zip` frais** lors d'une réinstallation — ne pas réutiliser un dossier existant qui pourrait mélanger les versions.
|
|
- **Licence à renouveler avant expiration** — sinon WMS inutilisable sur la VM.
|
|
|
|
## Common errors
|
|
|
|
- **`GNAGetDataForGit.ps1` plante "dossier GNA non trouvé"** → chemins `XSDPath` / `commsPath` pointent vers `C:\ProgramData\...` alors que le GNA a été installé dans `C:\Program Files\...` via le nouveau deploy script. Corriger `responses.xml`.
|
|
- **Duplications de lignes dans un XSD composé** → quelqu'un a copié directement le XSD final dans `XSD_Source`, au lieu de partir des sources. Toujours passer par `GNAGetDataForGit.ps1`.
|
|
- **Réinstallation GNA qui échoue** → dossier `InstallApplication` mal reconstitué (manque `Config` / `Scripts` / `TaskDefinitions` / `XSD` dans le `GNA.zip`). Reprendre étape 4 de la réinstallation.
|
|
- **`responses.xml` pointe vers un mauvais `FromGIT`** → la réinstallation tire une config d'un autre projet. Vérifier l'URL `FromGIT` avant exécution de `DeployCommsApps.ps1`.
|
|
- **WMS bloque au bout de 7 jours sur la VM** → licence projet non importée. Faire la demande et utiliser `Submit license` dans `EasySTS/License`.
|
|
- **Export licence impossible depuis `EasySTS/License`** → VM plus joignable ou licence déjà expirée côté Easy. Contacter les chefs d'équipe pour repartir d'une licence serveur.
|
|
|
|
## Related
|
|
|
|
- [System Architecture Overview](../architecture/overview.md) — architecture IIS / services WMS
|
|
- [ERP Interface](../concepts/erp-interface.md) — messages ERP portés par le GNA (ROR/SOR/SOF/STV/etc.)
|
|
- [First Deployment](first-deployment.md) — déploiement initial (GNA inclus dans `EnabledModules`)
|
|
- [Deploy Existing Application](deployment-existing-app.md) — redéploiement après mise à jour GNA
|
|
- [Git Workflow](git-workflow.md) — commit/push du dossier `\services\GNA` après modification de scripts BOO
|