Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Planning to ICS V2.0

Application native pour Windows et macOS permettant de générer des fichiers calendrier .ics compatibles Outlook à partir des plannings PDF hebdomadaires RF-Ext. La V2 fonctionne dans sa propre fenêtre, sans navigateur et sans serveur HTTP local.

Il s'agit d'une application métier très spécifique, conçue pour le format des plannings utilisés dans mon travail. Le projet est public afin d'en faciliter l'accès à mes collègues, mais si vous ne travaillez pas avec ce type de planning, il y a peu de chances qu'il vous soit utile.

En revanche, n'hésitez pas à récupérer le code source pour l'adapter à vos propres besoins. Si votre format de planning est différent, quelques modifications devraient vous permettre de le faire fonctionner dans votre environnement.

Origine du projet

Le projet a commencé avec des scripts manuels, de l'OCR et des traitements de fichiers. Des agents IA ont ensuite contribué à moderniser le code, améliorer l'extraction des PDF, gérer les accents et préparer l'application Windows.

Télécharger et installer

Le téléchargement le plus simple est ici : Télécharger l'installateur Windows V2.0.

Si le téléchargement direct ne démarre pas :

  1. Ouvrir la page des Releases GitHub.
  2. Cliquer sur v2.0 dans la liste.
  3. Descendre jusqu'à la rubrique Assets.
  4. Cliquer sur Planning_to_ICS_V2.0_Setup.exe.
  5. Ouvrir le fichier téléchargé pour lancer l'installation.

L'installateur contient l'application compilée et ses dépendances. Python n'est pas nécessaire sur le PC cible.

L'assistant d'installation permet de choisir le dossier d'installation. Par défaut, l'installation se fait sans droits administrateur dans :

%LOCALAPPDATA%\Programs\Planning to ICS

L'assistant propose la création de raccourcis, avec un raccourci dans le menu Démarrer coché par défaut. Le raccourci Bureau reste optionnel.

Si une version de Planning to ICS ou Planning To ICS est déjà installée, l'assistant le détecte au démarrage. Il propose soit de remplacer la version existante, soit d'installer la nouvelle version en plus dans un autre dossier avec des raccourcis séparés.

Les anciennes versions restent téléchargeables depuis la page des Releases, notamment la V1.09.

macOS

Télécharger le paquet Planning_to_ICS_V2.0_macOS.dmg.

  1. Ouvrir le fichier .dmg téléchargé.
  2. Faire glisser Planning To ICS dans le dossier Applications.
  3. Ouvrir l'application depuis Applications.

Le paquet macOS contient Python et les dépendances nécessaires. Il n'est pas encore signé par Apple : au premier lancement, faire un clic droit sur l'application, choisir Ouvrir, puis confirmer.

Usage

Lancer Planning to ICS depuis le menu Démarrer sous Windows ou depuis le dossier Applications sous macOS.

L'application s'ouvre dans une fenêtre dédiée avec :

  • le choix du dossier où se trouvent les plannings PDF par défaut ;
  • la liste de tous les PDF trouvés dans ce dossier et ses sous-dossiers ;
  • le choix manuel d'un PDF ailleurs sur le disque avec Parcourir ;
  • la sélection de plusieurs PDF hebdomadaires pour créer un seul ICS couvrant plusieurs semaines ;
  • la liste des techniciens du PDF choisi ;
  • un diagnostic indiquant si le planning est compatible, scanné ou non reconnu ;
  • le choix du dossier d'export du .ics ;
  • un tableau de sélection pour ajouter plusieurs techniciens, avec recherche et cases à cocher ;
  • la sélection automatique des techniciens travaillant sur au moins une même mission que le technicien principal ;
  • un ICS par personne et un ZIP regroupé lors d'un export multiple ;
  • un diagnostic des événements, doublons, chevauchements et vacations de nuit ;
  • le glisser-déposer d'un PDF ;
  • un bouton de prévisualisation ;
  • la modification des événements après prévisualisation ;
  • un bouton de génération ICS ;
  • des boutons pour ouvrir l'ICS ou afficher son dossier après génération ;
  • une fermeture complète avec la croix de la fenêtre ou Fichier > Quitter ;
  • des modes clair et sombre ;
  • l'export, l'import et la réinitialisation des réglages mémorisés.

Le dossier des plannings et le dossier d'export sont mémorisés entre deux lancements.

Quatre parcours sont disponibles :

  1. Générer ICS exporte directement le technicien choisi.
  2. Prévisualiser et modifier affiche ses événements dans un tableau modifiable avant l'export.
  3. Plusieurs semaines réunit les PDF hebdomadaires choisis dans un seul ICS pour le technicien principal. Chaque semaine reste modifiable avant l'export.
  4. Ajouter des techniciens ouvre un tableau de sélection. Le technicien principal est déjà coché ; il est possible d'ajouter manuellement d'autres personnes ou de cocher automatiquement celles qui partagent au moins une mission avec lui.

Après une prévisualisation simple ou multiple, chaque événement peut être décoché. Le résumé, les dates, les heures et la description restent modifiables avant l'export. En mode multiple, chaque technicien dispose de son propre tableau.

Une fois le fichier .ics généré, utiliser le bouton Ouvrir dans Outlook / agenda. Dans le nouvel Outlook, il est également possible de choisir Ajouter un calendrier, puis Charger à partir d'un fichier. Éviter de glisser le fichier directement dans la grille du calendrier : cet importeur Outlook peut mal interpréter les accents alors que le fichier ICS est bien en UTF-8.

L'application crée le fichier ICS, mais elle ne l'ajoute pas automatiquement dans Outlook, Google Agenda ou un autre calendrier.

Tutoriel vidéo

Le tutoriel vidéo V1.08 reste disponible dans les anciennes releases, mais son interface ne correspond plus à la V2.

Notice PDF : télécharger la notice rapide V2.0.

L'application compilée ne laisse ni fenêtre CMD ni onglet de navigateur visible. Fermer la fenêtre arrête complètement l'application.

Règles appliquées

  • Les jours sont associés aux dates par leur position horizontale dans le tableau.
  • Les jours SV, RH, congés, récupérations, absence, santé ou mobilité ne génèrent aucun événement.
  • Les pauses ne sont pas créées comme événements ; elles découpent le créneau travaillé.
  • Si une fin est inférieure au début, l'événement finit le lendemain.
  • Les titres Outlook retirent le nom du technicien quand il est répété au début de la mission.
  • La semaine et l'année sont lues en priorité dans le contenu du PDF, sans utiliser sa date de copie.
  • L'ICS est écrit en UTF-8 standard sans BOM, avec des dates UTC compatibles Outlook et la zone Europe/Paris en métadonnée.
  • Les PDF source ne sont jamais modifiés.

Développement

Le code source est disponible dans ce dépôt GitHub :

https://github.com/Mamat79/Planning-To-ICS

Installation des dépendances de développement :

python -m pip install -r requirements-dev.txt

Lancement sans compilation :

python .\planning_native.py

Exécution des tests automatiques :

python -m pytest

Compilation de l'application :

py -3.12 -m venv .venv
.\.venv\Scripts\python.exe -m pip install -r requirements-dev.txt
python .\tools\make_user_guide.py ".\output\pdf\Planning_to_ICS_V2.0_Notice.pdf" --version V2.0
$env:PLANNING_RELEASE_VERSION = "2.0"
.\.venv\Scripts\python.exe -m PyInstaller --noconfirm --clean ".\Planning To ICS V2.spec"

Le paquet Windows distribué est construit avec Python 3.12 installé hors du Microsoft Store. Cette version a été validée pour le démarrage de l'exécutable autonome.

Compilation de l'installateur :

& "$env:LOCALAPPDATA\Programs\Inno Setup 6\ISCC.exe" ".\installer\PlanningToICS.iss"

Les installateurs compilés ne sont pas versionnés dans Git. Ils sont joints aux Releases GitHub afin de garder le dépôt source léger.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages