Configuration des réservations internes and FAQ export: Difference between pages

From Documentation de la solution web de gestion OpenFlyers
(Difference between pages)
Jump to navigation Jump to search
 
 
Line 1: Line 1:
__TOC__
=Présentation=
=Présentation=
Cette page présente le paramétrage du module de réservations interne.
L'objet de cette page est de décrire les notions à connaitre pour pouvoir exporter depuis OpenFlyers et ensuite importer des données dans d'autres logiciels.


=Gestion du planning (Admin > Structure > Paramétrage > Réservations internes)=
=Encodage des caractères=
[[Image:014_parametrage_gestion_reservation.png|1500px|center|gestion des réservations]]
OF utilise par défaut le jeu de caractère [[Wikipedia-fr:UTF-8|UTF-8]] qui est le format de [[Wikipedia-fr:Codage_de_caractères|codage des caractères]] recommandé pour les échanges de données.


==Mode de réservation==
Cependant, lors de l'exportation de données il faut que l'encodage utilisé pour le fichier généré par OpenFlyers soit accepté par le logiciel utilisé pour lire le fichier. Selon le système d'exploitation et selon les versions, les formats reconnus varient. Voici quelques exemples d'encodage de caractères courants pour la France
===Réservations standards===
* MS-DOS : CP850 (Europe occidentale DOS International)
Cette option permet de faire des réservations classiques, c'est-à-dire que l'on réserve directement une ressource en fonction de son nom (exemple : son immatriculation), cela ne diffère en rien des réservations "papier".
* Windows : CP1252 (Europe occidentale Windows Latin1)
* Linux : ISO-8859-1 (Europe occidentale ou latin-1), ISO-8859-15/Euro (Europe occidentale ou latin-9), UTF-8 (unicode), etc. Sur Linux l'encodage dépend de la distribution et de la configuration. Faire ''locale charmap'' pour connaitre l'encodage utilisé.
* Apple : macRoman, UTF-8 (unicode)


===Réservation par type de ressource===
Dans OpenFlyers, vous pouvez définir l'encodage par défaut dans '''Admin > Structure > Paramétrage''' dans le formulaire '''Reporting/Export''' en bas de la page. Sur certaines pages, vous pouvez également changer occasionnellement l'encodage au moment de l'export.
La réservation par type permet non pas de choisir une ressource particulière mais un type de ressource. Dans les structures aéronautiques possédant plusieurs aéronefs d'une même famille (plusieurs DR400/120 par exemple) on choisit alors de réserver un DR400/120 parmi ceux de la flotte. Le programme choisira l'immatriculation en fonction de la disponibilité des appareils (entretien mécanique par exemple).


La réservation par type comporte un double intérêt :
=Import de fichiers CSV=
*pouvoir donner la priorité à une ressource par rapport à une autre et ainsi pousser telle ou telle ressource à être plus utilisée en fonction des souhaits de programmation (pour les opérations de maintenance par exemple) ;
==Import de fichiers CSV dans OpenOffice/LibreOffice==
*créer une ressource fictive supplémentaire pour mettre en place le surbooking.
Lors de l'ouverture du fichier OpenOffice ou LibreOffice ouvre une fenêtre d'import de texte qui vous permet de sélectionner le jeu de caractère. Il suffit de choisir le même jeu de caractère que celui utilisé dans l'export côté OpenFlyers.


Si des ressources de même type sont indisponibles, que ce soit parce qu'elles sont réservées ou immobilisées, alors c'est la 1ère ressource disponible qui est choisie par OpenFlyers.
===Les nombres sont remplacés par des dates dans OpenOffice/LibreOffice===
Le format Standard d'Open Office ou de Libre Office interprète les cellules comme du texte ou comme une date si les chiffres sont compatibles.


Il est possible de modifier l'ordre de tri des ressources à n'importe quel moment.
Pour que ne pas avoir cette conversion automatique (désagréable) il faut, dans OpenOffice ou LibreOffice, modifier le format de la colonne en Texte dans la fenêtre de préparation de l'import de texte.  


De même, pour les utilisateurs disposant du droit "Surpasser la réservation par type", il est possible de forcer une réservation sur une ressource donnée.
Voici la procédure :
*Changer l'encodage par UTF-8 si vous ne l'avez pas paramétré dans votre config OF,
*Décocher le séparateur virgule (Colon) mis par défaut,
*Cliquer sur le séparateur point virgule (SemiColon),
*Cliquer sur l'entête du tableau de prévisualisation pour sélectionner la colonne dont vous souhaitez modifier le format (colonne comportant des montants tel que Solde, Débit ou Crédit)
*Dans la comboBox Type de colonne (column type) cliquer sur Texte
*Répéter l'opération pour les colonnes que vous souhaitez modifier le format


'''Attention :''' dans le cas où la structure exploite plusieurs ressources d'un même type mais qu'elle souhaite séparer la gestion des réservations pour chaque ressource, il faut créer autant de type de ressource que de ressources. Exemple : une structure aéronautique dispose de 2 avions de type DR420. Si les 2 avions sont identifiés avec un même type "DR420" alors les réservations seront faite toujours en priorité sur le DR420 du plus forte priorité. Si ce comportement n'est pas souhaité, il faut créer 2 types (DR420-1 et DR420-2 par exemple) et associer un avion au type DR420-1 et l'autre avion au type DR420-2.
Il sera nécessaire de remplacer le "Point" par une virgule dans les colonnes numériques:
*Sélectionner les colonnes à modifier
*Sélectionner la fenêtre Edit > Cherche & Remplace et remplir les champs avec Recherche = . et Remplace = ,
*Dans Plus d'options sélectionner "Sélection courante seulement"
*Cliquer sur Remplacer tous
Le format sera alors correctement interprété par votre tableur et vous pourrez l'enregistrer sous le format ods


==Code couleur==
=== Problème d’alignement des en-têtes ===
Permet de définir quelle code couleur doit être utilisée pour l'affichage des réservations :
Si les en-têtes ou données des dernières colonnes sont manquants ou décalés :
*Par utilisateur
* '''Cause''' : LibreOffice utilise un séparateur incorrect (virgule au lieu de point-virgule).
:deux champs de sélection s'affichent :
* '''Solution''' :
:*'''Couleur par défaut pour les réservations qui ne concernent pas l'utilisateur'''
# Relancer l’import du CSV.
::Il s'agit d'une paire de couleurs [Couleur claire (réservation en solo) / couleur foncée (réservation en instruction)] utilisé pour afficher les réservations qui ne concernent pas l'utilisateur connecté.
# Décocher le séparateur "Virgule" (par défaut).
:*'''Couleur par défaut pour les réservations qui concernent l'utilisateur'''
# Cocher "Point-virgule" (ou le séparateur utilisé dans le fichier CSV).
::Il s'agit d'une paire de couleurs [Couleur claire (réservation en solo) / couleur foncée (réservation en instruction)] utilisé pour afficher les réservations qui concernent l'utilisateur connecté.
:Il est possible de configurer [[Gestion-des-utilisateurs#Changer-la-couleur-d'affichage-des-réservations-d'un-utilisateur|une paire de couleurs par utilisateur]].
*[[Gestion-des-types-d'activités#Affecter-une-couleur-à-un-type-d'activité|Par type d'activité]]


==Affichage possible des activités réalisées dans le planning==
===Problème de séparateur décimal lors de copier/coller vers OpenOffice ou LibreOffice===
Permet aux utilisateurs disposant du droit [[Gestion-des-profils#Voir-les-activités-de-tous|Voir les activités de tous]] d'activer le module d'[[Utilisation-des-réservations-internes-sur-l%27interface-web#Affichage-des-activités-réalisées|Affichage des activités réalisées]] sur la page de réservation.
Le séparateur décimal dans les pages XHTML fourni par OF dans votre navigateur est le point.
Lors d'un copier/Coller Open Office ou Libre Office interprète les cellules au format standard par défaut et interprète alors les cellules comme du texte.
OpenOffice ou Libre office peut etre configuré pour une interprétation automatique du point comme séparateur décimal
*Allez dans l'onglet Outils > Options > Chargement&Enregistrement > Compatibilité HTML (Tools > Options > Load&Save > HTML Compatibility)
*Cocher "Utiliser l'environnement linguistique Anglais (USA) pour les nombres", ("Use English (USA) locale numbers")


==Réservation multi-ressources==
Le programme interprète alors le point comme le séparateur décimal et le format de la cellule sera alors numérique
Cette fonctionnalité permet d'autoriser à un utilisateur de réserver plusieurs ressources sur des créneaux horaires qui se chevauchent.


'''Attention :''' cette fonctionnalité n'est pas conçue pour les formateurs/instructeurs et entraine des bugs d'affichage sur le planning de réservation. La version 4 d'OpenFlyers corrigera ce défaut.
==Import de fichiers CSV dans Excel==
Les anciennes versions d'Excel ne gèrent pas le choix ou la reconnaisse automatique de l'encodage des caractères. Si vous êtes dans cette situation vous pouvez soit vous tourner vers le logiciel libre [http://fr.openoffice.org/ OpenOffice] ou modifier le format d'encodage côté OpenFlyers en spécifiant [[#Encodage_des_caractères|un format d'encodage qui correspond à votre système d'exploitation]].


==Affichage du nom des ressources dans le planning==
===Problème de somme de nombres décimaux d'un export CSV===
Ce paramétrage permet d'afficher ou cacher le nom des ressources dans le planning. Cela permet de diminuer la taille verticale des lignes du planning et de cacher ces noms lorsqu'ils ne sont pas nécessaires.
Si la somme de nombre décimaux retourne 0 :
 
#Vérifier la nature du séparateur de décimales
==Afficher les alertes non bloquantes lors des glisser-déposer==
#*une virgule en français (ex: 0,1)
Ce paramétrage permet d'afficher les alertes non bloquantes lors des [[Utilisation-des-réservations-internes-sur-l%27interface-web#Glisser-déposer-des-réservations|glisser-déposer des réservations]] sur le planning.
#*un point en anglais (ex: 0.1)
 
#Dans '''Excel 2007''' : Cliquer sur le "Bouton Office" (bouton rond avec le logo Microsoft Office en haut à gauche)
==Heure de début et fin (useau X) d'activité==
#Cliquer sur le bouton "Options Excel" en bas de la liste. Cette action ouvre une fenêtre
Permet de définir la plage horaire du planning de réservation dans le fuseau horaire de la structure.
#Aller dans '''Options avancées > Options d'édition'''
 
#Décocher "Utiliser les séparateurs système" et remplacer le séparateur de décimales par celui utilisé dans le fichier
==Interdire d'effectuer une réservation débutant dans moins de==
#Sauvegarder, quitter puis ouvrir le fichier
Permet d'empêcher d'effectuer une réservation débutant dans moins de X temps. Cette fonctionnalité est notamment utile en réservation par type lorsque la distribution des ressources réelles par ligne de planning est faite le matin pour la journée. Elle est également utile lorsque la facturation se fait la veille au vu des réservations du lendemain.
#Utiliser la fonction "somme"
 
==Limitation dans le temps des réservations==
Permet de limiter dans le temps les réservations.
 
==Limitation du nombre de réservations==
Permet de limiter le nombre de réservations par utilisateur.
 
==Saisie de la destination (si champ lieu d'arrivée coché)==
Permet de demander à l'utilisateur d'indiquer sa destination et ce en fonction de la durée de sa réservation.
 
==Durée minimale d'une réservation==
Permet de définir la durée minimale d'une réservation.
 
La durée maximale d'une réservation peut se définir pour chaque type de ressource.
 
==Durée par défaut d'une réservation==
Permet de définir la durée par défaut.
 
==Afficher ces champs==
Permet de définir les champs visibles dans le formulaire de réservation :
*Même jour
*Places à disposition
*Lieu de départ
*Lieu d'arrivée
 
Les lieux cochés sont ainsi définis avec une valeur par défaut lorsqu'un vol est entré à partir d'une réservation.
 
==[[Paramétrage-des-validités#Paramétrer-globalement-le-contrôle-des-validités-pour-les-réservations|Paramétrer globalement le contrôle des validités pour les réservations]]==
 
==Type d'activité par défaut==
Permet de définir le type d'activité à cocher par défaut :
* lors d'une nouvelle réservation ou lorsqu'on sélectionne une personne en première place sur le [[Utilisation-des-réservations-internes-sur-l%27interface-web#Formulaire-de-réservation|formulaire de réservation de l'ancienne interface]]
* lors d'une nouvelle réservation sur le [[Utilisation-des-réservations-internes-sur-l%27appli-mobile#Tutoriel-vidéo|planning de la nouvelle interface]]
 
Pour définir le type :
* Aller dans '''Admin > Structure > Paramétrage > Planning'''
* Champ '''Type d'activité par défaut''' : Sélectionner le type d'activité
* Cliquer sur '''Enregistrer'''
 
==Type d'activité par défaut pour la seconde place (ancienne interface)==
Permet de définir le type d'activité à cocher par défaut lorsqu'on sélectionne une personne en seconde place sur le [[Utilisation-des-réservations-internes-sur-l%27interface-web#Formulaire-de-réservation|formulaire de réservation de l'ancienne interface]].
 
 
Pour définir le type :
* Aller dans '''Admin > Structure > Paramétrage > Planning'''
* Champ '''Type d'activité par défaut pour la seconde place (ancienne interface)''' : Sélectionner le type d'activité
* Cliquer sur '''Enregistrer'''
 
==Règles de saisies XML==
Permet d'éditer les [[#Règles-de-saisies|Règles de saisie]] qui s'appliquent, pour le moment, uniquement pour le planning.
 
=Règles de saisies=
Les règles de saisie sont utilisées uniquement par le moteur de réservation pour construire l'affichage des champs du formulaire de réservation et pour vérifier, après la saisie d'une réservation, que les données saisies respectent bien les règles de saisie.
 
Elles sont écrites en [[Wikipedia-fr:Extensible_Markup_Language|XML]]. cf. l'[[#Exemple|exemple de règles de saisie]].
 
Le moteur de vérification des règles s'enclenche dès qu'une réservation n'est plus "nue", c'est à dire lorsqu'au moins un élément est renseigné (activité, ressource, etc.). Alors il vérifie quelles sont les règles compatibles et en déduit les contenus possibles dans les champs de saisie de l'interface utilisateur.
 
La compatibilité d'une règle se détermine '''par restriction''' en vérifiant dans cet ordre les informations suivantes :
#Activités
#Ressources
#Profils
#Places
 
Pour chaque information, le moteur regarde si elle est renseignée. Si ce n'est pas le cas alors il passe à l'information suivante. Par exemple s'il n'y a pas encore d'activité de saisie alors il ne vérifie pas ce point-là dans la règle.
 
Pour les activités et les ressources, il regarde les règles qui acceptent celles renseignées. S'il y a des règles qui pose problème alors elles sont rejetées.
 
Pour les profils ce sont les personnes qui sont étudiées et ce de deux manières différentes selon si sur la saisie il y a une ressource de renseignée ou non.
*Lorsqu'il y a une ressource de renseignée, le fonctionnement est similaire aux autres informations. le moteur regarde pour toutes les personnes renseignées si sur la place où elles sont, elles ont au moins un profil valide. Si une personne n'a aucun profil pour la place où il est alors la règle est rejetée.
*Lorsqu'il n'y a pas de ressource le fonctionnement est différent. Au lieu de faire par restriction, le moteur va faire '''par ajout'''. C'est-à-dire qu'au lieu de dire "il ne faut que des pilotes", il va dire "je veux au moins un pilote". Pour ce faire il va regarder les profils de chaque personne. S'il trouve une personne avec un profil valide, il accepte la règle. Si aucune des personnes ne correspond, il va faire une seconde vérification au niveau des places. Si pour cette règle l'une des places n'est pas définie, il considère que les personnes présentes vont potentiellement aller sur cette place et il ne rejette pas la règle. Par contre, si toutes les places sont définies et qu'aucune des personnes ne correspond alors la règle est rejetée.
 
Pour les places, il vérifie qu'il n'y a pas trop de monde. Comme pour les profils il y a deux manières de les étudier en fonction de s'il y a une ressource ou non.
*Lorsqu'il y a une ressource, il va regarder pour chaque place si le nombre de personnes autorisées n'est pas dépassé. Si sur l'une des places le nombre est dépassé alors la règle est rejetée. Cependant, si le nombre est atteint mais pas dépassé alors la règle n'est pas rejetée.
*Lorsqu'il n'y a pas de ressource, il va parcourir chaque place pour compter le nombre total de personnes autorisées pour cette règle. Si le nombre est dépassé alors la règle est rejetée. Comme précédemment si le nombre est simplement atteint alors la règle n'est pas rejetée.
 
Si pour chaque information saisie, la règle est compatible alors elle est conservée.
 
Pour qu'une saisie soit valide, il faut qu'il existe au moins une règle de conservée, c'est à dire de compatible.
 
;Exemple
<syntaxhighlight lang="xml"><?xml version="1.0" encoding="UTF-8"?>
<ruleList>
    <rule>
        <!-- Liste des activités autorisées et requises -->
        <activityTypeList needs="bookAlone">
            <activityType>1</activityType> <!-- Local -->
        </activityTypeList>
        <!-- Liste des ressources autorisées -->
        <resourceList minQty="1" maxQty="1">
            <resourceType>1</resourceType> <!-- F-001 -->
            <resourceType>2</resourceType> <!-- F-002 -->
        </resourceList>
        <!-- Définition des places -->
        <placeList>
            <place index="0"  minQty="1" maxQty="1" status="1" needs="bookAnyone"> <!-- Pilote -->
                <!-- Liste des profils autorisés -->
                <profile>2</profile> <!-- Pilote -->
            </place>
        </placeList>
    </rule>
    <rule>
        <!-- Liste des activités autorisées et requises -->
        <activityTypeList needs="*(bookAlone)(bookWithInstr)">
            <activityType>1</activityType> <!-- Local -->
            <activityType>2</activityType> <!-- Instruction -->
        </activityTypeList>
        <!-- Liste des ressources autorisées -->
        <resourceList minQty="1" maxQty="1">
            <resourceType>*</resourceType> <!-- F-001, F-002, F-00X -->
        </resourceList>
        <!-- Définition des places -->
        <placeList>
            <place index="0"  minQty="1" maxQty="1" status="1"> <!-- Pilote-->
                <!-- Liste des profils autorisés -->
                <profile>1</profile> <!-- Elève -->
                <profile>2</profile> <!-- Pilote -->
            </place>
            <place index="1" minQty="1" maxQty="1" status="2"> <!-- Instructeur -->
                <!-- Liste des profils autorisés -->
                <profile>4</profile> <!-- Instructeur -->
            </place>
        </placeList>
    </rule>
    <rule>...</rule>
</ruleList>
</syntaxhighlight>
 
==attribut needs==
L'attribut needs peut être utilisé pour les éléments :
*activityTypeList
*place
 
Il contient un ou plusieurs droits qui sont requis par l'utilisateur effectuant la saisie pour que la règle puisse s'appliquer.
 
Lorsqu'il n'y a qu'un droit de requis, il faut écrire ''needs="nomDuDroit"''.
 
Lorsqu'il y a plusieurs droits possibles, un seul étant requis, il faut commencer par le signe * puis lister chaque droit en l'entourant de parenthèses : ''needs="*(bookAlone)(bookWithInstr)''.
 
==ruleList==
Élément racine de la structure XML ne peut contenir comme élément enfant que des éléments "rule" qui correspondent, chacun, à une règle.
 
Il n'y pas d'attribut possible.
 
===rule===
Définit une règle.
 
Les éléments possibles sont :
*formulaList
*activityTypeList
*resourceList
*placeList
 
Il n'y a pas d'attribut possible.
 
Chaque règle définit les types d'activités, types de ressources et places qui la rendent compatible.
 
L'exemple suivant définit une règle qui autorise une saisie pour le type d'activité ''Local'', les types de ressources ''F-001'' ou ''F-002'' et pour laquelle il faut exactement 1 utilisateur avec le profil ''Pilote'' à la place 0. Le statut attribué sera celui de numéro 1. De plus, La personne qui fait la réservation doit avoir le droit "bookAlone" et si elle dispose du droit "bookAnyone" alors elle verra en plus la liste des utilisateurs compatibles avec cette règle pour lui permettre d'en choisir une :
<xml><rule>
        <!-- Liste des activités autorisées et requises -->
        <activityTypeList needs="bookAlone">
            <activityType>1</activityType> <!-- Local -->
        </activityTypeList>
        <!-- Liste des ressources autorisées -->
        <resourceList minQty="1" maxQty="1">
            <resourceType>1</resourceType> <!-- F-001 -->
            <resourceType>2</resourceType> <!-- F-002 -->
        </resourceList>
        <!-- Définition des places -->
        <placeList>
            <place index="0"  minQty="1" maxQty="1" status="1" needs="bookAnyone"> <!-- Pilote -->
                <!-- Liste des profils autorisés -->
                <profile>2</profile> <!-- Pilote -->
            </place>
        </placeList>
    </rule></xml>
 
====formulaList====
Contient la liste des formules que la règle doit respecter au travers des éléments ''formula''.
 
=====formula=====
Doit contenir les attributs :
*''action'' : indique l'action concernée pour la vérification de la formule. Si l'action effectuée par l'utilisateur n'est pas celle de la formule, alors la formule n'est pas vérifiée. Par contre, la règle peut quand être compatible. Il est possible de remplacer le nom d'une action par * pour indiquer que la formule doit être vérifiée quelque soit l'action.
*''title'' : pour indiquer le message d'alerte devant s'afficher lorsque la formule n'est pas respectée
 
Le contenu de l'élément ''formula'' est une formule qui est testée lors de la saisie.
 
'''Attention :''' dans la formule, pour les signes de comparaison supérieur ou inférieur, il faut saisir leur équivalent HTML :
* > doit être remplacé par <code>&amp;gt;</code>
* < doit être remplacé par <code>&amp;lt;</code>
* >= doit être remplacé <code>&amp;gt;=</code>
* <= doit être remplacé <code>&amp;lt;=</code>
 
Exemple :
<xml><!-- Durée maximum : 30min -->
<formula action="update" title="Vous ne pouvez pas faire de réservation ayant une durée supérieure à 30 minutes.">(%DURATION &lt;= 300)</formula></xml>
 
====activityTypeList====
Contient la liste des types d'activités qui sont compatibles avec la règle.
 
Peut contenir l'attribut [[#attribut-needs|needs]].
=====activityType=====
Contient l'identifiant d'un type d'activité.
 
====resourceList====
Contient la liste des types de ressources qui sont compatibles avec la règle.
 
Peut contenir les attributs ''maxQty'' et ''minQty'' pour définir le nombre de ressources maximum et minimum.
 
====placeList====
Contient la liste définissant les places.
 
=====place=====
Contient la définition de chaque place.
 
Peut contenir des éléments ''profile'' pour indiquer un profil requis parmi plusieurs pour qu'un utilisateur puisse occuper la place.
 
Doit contenir l'attribut index pour numéroter la place définie.
 
Peut contenir les attributs ''maxQty'', ''minQty'', ''needs'' et ''status''.
 
L'attribut ''needs'' permet de définir le droit requis pour l'utilisateur effectuant la saisie afin qu'il puisse choisir l'utilisateur dans la liste des utilisateurs compatibles. typiquement, cet attribut est utilisé ainsi : ''needs="bookAnyone"''.
 
L'attribut ''status'' permet de définir le statut de la personne à laquelle on attribut la place. Cette définition se fait en utilisant l'identifiant du statut. Exemple : ''status="1"''.
 
======profile======
Contient l'identifiant du profile requis.
 
==Wildcard==
Le caractère * peut être utilisé dans les éléments '''resourceType'''. Il indique que la règle s'applique à tous les types de ressources existants de la plateforme.
 
Exemple avec wildcard :
<xml><resourceTypeList minQty="1" maxQty="1">
    <resourceType>*</resourceType>
</resourceTypeList></xml>
 
Exemple sans wildcard :
<xml><resourceTypeList minQty="1" maxQty="1">
    <resourceType>1</resourceType>
    <resourceType>2</resourceType>
    <resourceType>3</resourceType>
</resourceTypeList></xml>

Revision as of 11:28, 27 January 2025

Présentation

L'objet de cette page est de décrire les notions à connaitre pour pouvoir exporter depuis OpenFlyers et ensuite importer des données dans d'autres logiciels.

Encodage des caractères

OF utilise par défaut le jeu de caractère UTF-8 qui est le format de codage des caractères recommandé pour les échanges de données.

Cependant, lors de l'exportation de données il faut que l'encodage utilisé pour le fichier généré par OpenFlyers soit accepté par le logiciel utilisé pour lire le fichier. Selon le système d'exploitation et selon les versions, les formats reconnus varient. Voici quelques exemples d'encodage de caractères courants pour la France

  • MS-DOS : CP850 (Europe occidentale DOS International)
  • Windows : CP1252 (Europe occidentale Windows Latin1)
  • Linux : ISO-8859-1 (Europe occidentale ou latin-1), ISO-8859-15/Euro (Europe occidentale ou latin-9), UTF-8 (unicode), etc. Sur Linux l'encodage dépend de la distribution et de la configuration. Faire locale charmap pour connaitre l'encodage utilisé.
  • Apple : macRoman, UTF-8 (unicode)

Dans OpenFlyers, vous pouvez définir l'encodage par défaut dans Admin > Structure > Paramétrage dans le formulaire Reporting/Export en bas de la page. Sur certaines pages, vous pouvez également changer occasionnellement l'encodage au moment de l'export.

Import de fichiers CSV

Import de fichiers CSV dans OpenOffice/LibreOffice

Lors de l'ouverture du fichier OpenOffice ou LibreOffice ouvre une fenêtre d'import de texte qui vous permet de sélectionner le jeu de caractère. Il suffit de choisir le même jeu de caractère que celui utilisé dans l'export côté OpenFlyers.

Les nombres sont remplacés par des dates dans OpenOffice/LibreOffice

Le format Standard d'Open Office ou de Libre Office interprète les cellules comme du texte ou comme une date si les chiffres sont compatibles.

Pour que ne pas avoir cette conversion automatique (désagréable) il faut, dans OpenOffice ou LibreOffice, modifier le format de la colonne en Texte dans la fenêtre de préparation de l'import de texte.

Voici la procédure :

  • Changer l'encodage par UTF-8 si vous ne l'avez pas paramétré dans votre config OF,
  • Décocher le séparateur virgule (Colon) mis par défaut,
  • Cliquer sur le séparateur point virgule (SemiColon),
  • Cliquer sur l'entête du tableau de prévisualisation pour sélectionner la colonne dont vous souhaitez modifier le format (colonne comportant des montants tel que Solde, Débit ou Crédit)
  • Dans la comboBox Type de colonne (column type) cliquer sur Texte
  • Répéter l'opération pour les colonnes que vous souhaitez modifier le format

Il sera nécessaire de remplacer le "Point" par une virgule dans les colonnes numériques:

  • Sélectionner les colonnes à modifier
  • Sélectionner la fenêtre Edit > Cherche & Remplace et remplir les champs avec Recherche = . et Remplace = ,
  • Dans Plus d'options sélectionner "Sélection courante seulement"
  • Cliquer sur Remplacer tous

Le format sera alors correctement interprété par votre tableur et vous pourrez l'enregistrer sous le format ods

Problème d’alignement des en-têtes

Si les en-têtes ou données des dernières colonnes sont manquants ou décalés :

  • Cause : LibreOffice utilise un séparateur incorrect (virgule au lieu de point-virgule).
  • Solution :
  1. Relancer l’import du CSV.
  2. Décocher le séparateur "Virgule" (par défaut).
  3. Cocher "Point-virgule" (ou le séparateur utilisé dans le fichier CSV).

Problème de séparateur décimal lors de copier/coller vers OpenOffice ou LibreOffice

Le séparateur décimal dans les pages XHTML fourni par OF dans votre navigateur est le point. Lors d'un copier/Coller Open Office ou Libre Office interprète les cellules au format standard par défaut et interprète alors les cellules comme du texte. OpenOffice ou Libre office peut etre configuré pour une interprétation automatique du point comme séparateur décimal

  • Allez dans l'onglet Outils > Options > Chargement&Enregistrement > Compatibilité HTML (Tools > Options > Load&Save > HTML Compatibility)
  • Cocher "Utiliser l'environnement linguistique Anglais (USA) pour les nombres", ("Use English (USA) locale numbers")

Le programme interprète alors le point comme le séparateur décimal et le format de la cellule sera alors numérique

Import de fichiers CSV dans Excel

Les anciennes versions d'Excel ne gèrent pas le choix ou la reconnaisse automatique de l'encodage des caractères. Si vous êtes dans cette situation vous pouvez soit vous tourner vers le logiciel libre OpenOffice ou modifier le format d'encodage côté OpenFlyers en spécifiant un format d'encodage qui correspond à votre système d'exploitation.

Problème de somme de nombres décimaux d'un export CSV

Si la somme de nombre décimaux retourne 0 :

  1. Vérifier la nature du séparateur de décimales
    • une virgule en français (ex: 0,1)
    • un point en anglais (ex: 0.1)
  2. Dans Excel 2007 : Cliquer sur le "Bouton Office" (bouton rond avec le logo Microsoft Office en haut à gauche)
  3. Cliquer sur le bouton "Options Excel" en bas de la liste. Cette action ouvre une fenêtre
  4. Aller dans Options avancées > Options d'édition
  5. Décocher "Utiliser les séparateurs système" et remplacer le séparateur de décimales par celui utilisé dans le fichier
  6. Sauvegarder, quitter puis ouvrir le fichier
  7. Utiliser la fonction "somme"