# Inventaire-Gestion

Ce projet permet de gérer les inventaires et les ratios de plusieurs sites à partir d’un fichier Excel central et d’une base MySQL.

## Fonctionnalités

* Mise à jour du pilote ODBC sur machine client
* Authentification par site
* Lecture automatique du fichier `ratio.xlsm`
* Insertion des données dans la base correspondante
* Gestion des articles et inventaire par code barres
* Affichage dans Streamlit (à venir)

# 🚀 Installation du pilote MySQL ODBC 8.3

## ✅ Objectif

Assurer une compatibilité totale entre les fichiers Excel connectés à MySQL et le pilote ODBC, en uniformisant tous les postes avec la **version 8.3.0 du connecteur MySQL ODBC**.

---

## 📥 Étapes d'installation

1. Télécharger le fichier `mysql-connector-odbc-8.3.0-winx64.msi` depuis le site officiel :

   👉 [https://dev.mysql.com/downloads/connector/odbc/](https://dev.mysql.com/downloads/connector/odbc/)

2. Copier le fichier dans ce dossier sur chaque poste cible :

   ```
   C:\Installers\
   ```

3. Créer un fichier `Installer_ODBC_93.bat` contenant :

   ```bat
   @echo off
   echo ===============================
   echo Installation MySQL ODBC 8.3.0
   echo ===============================

   SET MYPATH=C:\Installers
   SET INSTALLER=%MYPATH%\mysql-connector-odbc-8.3.0-winx64.msi

   IF EXIST "%INSTALLER%" (
       echo >> Démarrage de l'installation silencieuse...
       msiexec /i "%INSTALLER%" /qn
       echo >> Installation terminée avec succès.
       pause
   ) ELSE (
       echo >> Fichier MSI non trouvé :
       echo >> %INSTALLER%
       pause
   )
   ```

4. Lancer le script :

   * clic droit sur `Installer_ODBC_83.bat`
   * puis **"Exécuter en tant qu’administrateur"**

---

## 🔁 (Optionnel) Désinstallation d'une version précédente

Pour supprimer proprement une version antérieure (ex : 8.2), vous pouvez ajouter :

```bat
msiexec /x {GUID-DE-LA-VERSION-8.2} /qn
```

*(à compléter avec l'identifiant de produit si nécessaire)*

---

## 🧩 Conseils

* Intégrez ces fichiers dans votre dépôt (ex : dossier `Installers/`)
* Versionnez votre script dans Git (Gitea) pour faciliter le déploiement sur tous les sites
* Utilisez RustDesk ou accès direct pour l'installation sur les PC distants

# 🔧 Gestion et distribution du fichier Excel `Ratio_prod.xlsm`

Ce document décrit le fonctionnement mis en place pour garantir une version stable et toujours à jour du fichier Excel `Ratio_prod.xlsm`, utilisé dans le cadre du projet **Ratio & Inventaires**.

---

## 🗃️ Organisation des fichiers

### Structure dans le projet (Git)

/Excel/
├── dev/
│ └── Ratio\_dev.xlsm ← Fichier de travail
├── prod/
│ └── Ratio\_prod.xlsm ← Fichier de production (non suivi par Git)

* `Ratio_dev.xlsm` : version de développement modifiable, suivie par Git.
* `Ratio_prod.xlsm` : version validée, protégée (ajoutée au `.gitignore` pour éviter tout push accidentel).

---

## 🖥️ Synchronisation automatique avec le NAS Synology

Le fichier `Ratio_prod.xlsm` est copié automatiquement sur le NAS Synology, dans un dossier partagé :

### ⚙️ Configuration

* **Synology Drive Server** est activé sur le NAS.
* **Synology Drive Client** est installé sur le poste de travail.
* Dossier synchronisé : `Partage_Ratio`
* Mode de synchronisation recommandé : `Téléchargement uniquement`.

---

## 🔌 Copie automatique vers clé USB (via NAS)

### Prérequis

* Application **USB Copy** installée et activée sur le NAS.

### Fonctionnement

1. Brancher une clé USB sur le port en façade du NAS.
2. Le NAS copie automatiquement `Ratio_prod.xlsm` sur la clé USB si une version plus récente est disponible.
3. Le fichier est copié dans le dossier racine de la clé, ou dans un dossier `Ratio/`.

### Avantages

* Pas besoin d’ordinateur pour copier à la main.
* Copie toujours à jour dès que la clé est branchée.

---

## 🛠️ Installation manuelle depuis une clé USB

Contenu du dossier USB :

```
INSTALL_RATIO/
├── Ratio_prod.xlsm
└── Installer_Prod.bat
```

### Étapes :

1. Brancher la clé USB sur le poste utilisateur.
2. Lancer `Installer_Prod.bat` **en tant qu’administrateur**.
3. Le fichier sera copié dans :

```
C:\Program Files\Ratio\Ratio.xlsm
```

et protégé en lecture seule.

---

## ♻️ Restaurer la version de production dans le projet (dev)

Si la version de travail (`dev`) a été corrompue ou modifiée par erreur :

```bash
cp Excel/prod/Ratio_Cuisine.xlsm Excel/dev/Ratio_Cuisine_dev_old.xlsm
```

Ou sous Windows :

```powershell
Copy-Item -Path "Excel\prod\Ratio_prod.xlsm" -Destination "Excel\dev\Ratio_dev.xlsm" -Force
```

---

## 🧾 Notes complémentaires

* Le fichier `Ratio_prod.xlsm` n’est **pas suivi par Git**, car exclu via `.gitignore`.
* Il est **protégé en lecture seule** sur le poste utilisateur.
* Une sauvegarde automatique est possible via **Hyper Backup** ou les **snapshots** du NAS.

---

# 📋 Checklist Release DEV → PROD

Pour garantir que DEV reste ouvert et que PROD soit protégé :

1. **Travailler dans DEV** : `Excel/dev/Ratio_dev.xlsm` (projet VBA non verrouillé).
2. **Lancer le script batch** (`build_prod.bat`).

   * Copie DEV → PROD
   * Application des protections (feuilles, structure, horodatage)
   * Vérification/verrouillage du projet VBA PROD (manuel si nécessaire)
3. **Vérifier PROD** :

   * Feuilles protégées
   * Structure du classeur protégée
   * Projet VBA verrouillé (mot de passe, déjà posé une fois)
4. **Distribuer PROD** : via NAS, USB ou dossier client.

👉 DEV reste toujours libre, PROD reste verrouillé et sûr.

---

## Auteur

Michel
