[Résolu] Taille limite et performance d'un classeur ODS

Discussions à propos du tableur Calc.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur : Vilains modOOs

Règles du forum
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Avatar de l’utilisateur
piloch
NOOuvel adepte
NOOuvel adepte
Messages : 13
Inscription : 28 août 2012 11:33

[Résolu] Taille limite et performance d'un classeur ODS

Message par piloch »


La modération vous a écrit: Titre modifié pour plus de clarté : Taille limite fichier Calc
Veillez à éviter les termes implicites la prochaine fois.

Bonjour.
Je travail sur un fichier "conséquent" en taille (8 Mo).
Il est composé de 60 feuilles et de 1229283 cellules et 122 graphiques.
Ce fichier sert à faire de la prévision des crues. Les prévisionnistes doivent saisir des données d'entrée (débit / Pluie) pour obtenir, via les graphiques, une prévision théorique.
Ce que je ne comprend pas c'est que, de manière semble-t-il aléatoire, au bout d'un certain nombre de tentative (des fois 5, des fois 25 ou 30) de saisie de données d'entrée différentes, les graphiques ne se mettent plus à jour (sauf si on fait une édition du graphique, auquel cas, il fait, pendant le temps de l'édition, la mise à jour du résultat).
Je serai bien tenté de modifier la mémoire vive (outils/option/avancée/configuration avancée/et faire une recherche sur "cache"), mais je ne sais pas quelles sont les valeurs pertinentes à changer. Quelques essais sont peu convaincant en terme d'amélioration.
Il n'est malheureusement pas possible de diminuer la taille du fichier car il concerne une entité géographique unique et que les données utiles à la prévision sont très nombreuses (historique, valeur d'humidité des sols, ...)
La question que je me pose est donc :
- A partir d'une certaine "taille", les performances de Calc sont-elles limitées ?
- Si ce n'est pas un problème de taille, existe-t-il une solution pour que la mise à jour de mes graphiques soit stable.

PS : Vu que le problème n'apparait que sur le fichier complet, je ne sais pas comment je pourrais mettre un exemple sur le site.

Merci d'avance pour vos pistes.
Dernière modification par piloch le 20 août 2019 09:07, modifié 1 fois.
Libre Office 6.1.5 sous Windows 10
Avatar de l’utilisateur
njhub
Membre enthOOusiaste
Membre enthOOusiaste
Messages : 495
Inscription : 18 juin 2017 05:43
Localisation : 976

Re: Taille limite fichier Calc

Message par njhub »

Bonjour piloch,

Dans les "Options" de Calc
Sélectionnez "Toujours depuis..." dans "Actualiser les liens au chargement"
Dans LOCalc ça fonctionne
[img]
https://forum.openoffice.org/fr/forum/d ... &id=135362[/img]
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibreOffice 7.5.9.2.M1 (x64) FR-YT 05/12/23
OS : Windows 11.0
Avatar de l’utilisateur
piloch
NOOuvel adepte
NOOuvel adepte
Messages : 13
Inscription : 28 août 2012 11:33

Re: Taille limite fichier Calc

Message par piloch »

Merci mais cette option est déjà activée.

Dans le fichiers joint, quelques copies d'écran pour mieux expliquer

Dans les cases vertes, le prévisionniste donne les valeurs de débit, de cumul, ..

IMAGE 1 : Ici, la valeur de Débit choisit est 5. La Croix bleu sur le graphique se positionne sur l’absisse « 5 », le graphique s’est mis à jour. Tout va bien.

IMAGE 2 : Dans cet autre exemple, (sur un autre onglet), le prévisionniste donne aussi 5 comme débit initial, mais le graphique ne se met plus à jour (la position de la croix bleu reste comme avant le changement de valeur ou le débit était de 10).:

Précision 1 : La « non mise à jour » est survenue après avoir fait des mises à jour sur plusieurs autres onglet sans difficulté.
IMAGE 3 : Précision 2 : un déplacement du graphique ou une « édition » du graphe affiche le bon graphique.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre Office 6.1.5 sous Windows 10
Avatar de l’utilisateur
njhub
Membre enthOOusiaste
Membre enthOOusiaste
Messages : 495
Inscription : 18 juin 2017 05:43
Localisation : 976

Re: Taille limite fichier Calc

Message par njhub »

Essayez en enregistrant votre fichier sous un autre format, en utilisant xlsx le fichier devrait "maigrir" considérablement et reste utilisable par LibreOffice Calc,
je ne sais pas ce qu'il en est avec OpenOffice Calc.

J'avais le même problème de mise à jour des grahiques jusqu'à ce que j'active l'option décrite tout à l'heure. Mais je n'en ai que 370 dans le même fichier.

Pour contourner le pb je n'affiche qu'une sélection (maximum 26 graphiques) dans l'onglet de visualisation qui se met à jour sans difficulté.

Je ne pense pas que vous ayez des formats superflus dans votre base de données, si tel était le cas limitez en l'usage...
LibreOffice 7.5.9.2.M1 (x64) FR-YT 05/12/23
OS : Windows 11.0
Avatar de l’utilisateur
piloch
NOOuvel adepte
NOOuvel adepte
Messages : 13
Inscription : 28 août 2012 11:33

Re: Taille limite et performance d'un classeur ODS

Message par piloch »

Bonjour.
Je n'avais pas pensé à ça.
Je viens de tester un enregistrement au format "xlsx", et la taille du fichier est passée de 8,3 à 9,3 Mo. :?
De plus, certains graphique sont modifiés lors de la réouverture.

Pour la proposition sur le nombre de graphique, ils ne s'affichent bien sûr pas tous ensemble, mais uniquement par série de 4.
L'organisation du fichier est la suivante : Il y à 15 tronçons de rivière à suivre, pour chaque tronçons, j'ai 4 onglets qui contiennent, pour deux d'entre-eux, les données de bases, pour le troisième toutes les formules de calculs la création des graphiques et le dernier est celui de visualisation pour les utilisateurs qui ne contient que les variables à saisir et les 4 graphiques pour le tronçons concerné.

Pensez-vous que des modifications sur les valeurs de mémoire vive pourraient améliorer la situation ? Et si oui, quelles seraient les valeurs pertinentes à modifier ?

Merci
Libre Office 6.1.5 sous Windows 10
Avatar de l’utilisateur
njhub
Membre enthOOusiaste
Membre enthOOusiaste
Messages : 495
Inscription : 18 juin 2017 05:43
Localisation : 976

Re: Taille limite et performance d'un classeur ODS

Message par njhub »

Bonjour Piloch,

Si je comprend bien vous avez trente onglets de bases de données (sans doute similaires)
quinze onglets de formules (sans doute similaires) et
quinze onglets de visualisation (sans doute similaires).

A mon avis une refonte totale s'impose. Une seule base de données, un seul onglet de formules et
autant pour la visualisation.

Je sais que c'est un travail énorme, qui plus est, peut être pas réalisable suivant l'étendue des données.

Le choix des données à afficher s'effectue sans doute dans l'onglet de visualisation,
qui commande aux formules d'aller chercher dans la bonne base de données...

Ces mêmes formules peuvent très bien chercher dans une base unique, ce qui allègerait d'autant les formules
tout en accélérant le traitement, mais tout cela n'est qu'hypothèses...

En tout état de cause je travaillerais de ce côté là avant de traficoter dans la configuration.

Si vous voulez partager un extrait de votre fichier, que je me rende bien compte, je suis preneur.
Précisez combien de lignes comportent vos bases de données complètes

Ne m'envoyez pas le fichier xlsx qui malheureusement, cette fois, occupe plus d'espace, désolé...
LibreOffice 7.5.9.2.M1 (x64) FR-YT 05/12/23
OS : Windows 11.0
Avatar de l’utilisateur
piloch
NOOuvel adepte
NOOuvel adepte
Messages : 13
Inscription : 28 août 2012 11:33

Re: Taille limite et performance d'un classeur ODS

Message par piloch »

Bonjour njhub.
Merci de prendre du temps pour m'aider.

Les onglets sont effectivement similaire dans leurs forme mais bien sûr pas dans leurs contenus.

En fichier joint, un exemple avec 1 seul tronçon (pour le coup, le fichier est plus léger et ne produit jamais l'effet constaté avec le complet).
Le premier onglet est celui qui est laissé visible et accessible pour l'utilisateur en exploitation. (les 3 autres sont cachés).
L'onglet SACHA contient l'historique des évènements survenus sur la station (en l’occurrence, à Brantôme).
L'onglet HU2 reprend les données d'humidité du sol à la station (22200 lignes que j'ai ramené à 10000 lignes pour avoir un fichier inférieur à 500ko pour pouvoir le déposer sur le site)
L'onglet exploitation récupère les données des 2 onglets précédents afin d'avoir une vue globale des données disponibles pour l'agent qui réalise le fichier et détermine la meilleure courbe possible pour représenter l'historique et déterminer les prévisions.
Il est très utile pour la spécialiste du domaine d'avoir toutes les données visible sur le même onglet (exploitation) pour faire son travail et déterminer la bonne courbe de réponse. C'est pour cela que ce mode de fonctionnement est privilégié.

Lors de l'usage, les utilisateurs changent les valeurs dans le tableau A4:C7 du premier onglet et la localisation des croix bleu sur les deux premiers graphiques leur permet de déterminer les risques en termes d'inondations.
Sur le fichier fournit, cela marche sans jamais faillir. Sur le fichier complet, au bout d'un certain temps, les croix bleu ne se mettent plus à jour d'où ma question sur les valeur de mémoire pour tenter de corriger cela.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre Office 6.1.5 sous Windows 10
Avatar de l’utilisateur
njhub
Membre enthOOusiaste
Membre enthOOusiaste
Messages : 495
Inscription : 18 juin 2017 05:43
Localisation : 976

Re: Taille limite et performance d'un classeur ODS

Message par njhub »

Bonjour piloch,

Pourquoi retranscrire SACHA1 dans Exploitation1?
Le plus absurde étant de laisser subsister des formules de calcul pour des données historiques figées existant par ailleurs.
Pour obtenir votre valeur vous cherchez par le biais d'une formule à rapatrier ladite donnée depuis la base de donnée vers votre feuille sans aucune modification (pas de plus value, au contraire)...?

Pour concrétiser ma façon de voir vous trouverez en PJ votre fichier avec quelques modifications qui apportent un gain de plus de 16% en taille de fichier
piloch-Prévisions_Qp_Dordogne_aaaammjj_hh_extrait-1.ods
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibreOffice 7.5.9.2.M1 (x64) FR-YT 05/12/23
OS : Windows 11.0
Avatar de l’utilisateur
piloch
NOOuvel adepte
NOOuvel adepte
Messages : 13
Inscription : 28 août 2012 11:33

Re: Taille limite et performance d'un classeur ODS

Message par piloch »

Bonjour.
Merci de cette proposition. elle permet effectivement de gagner un peu en taille de fichier.
J'y vois pourtant 2 difficultés.
La première, le gain de taille ne devrait pas être suffisant. J'ai déjà tenté de réduire la taille (en coupant en 2 le fichier), j'obtenais 2 fichiers d'un peu moins de 5Mo qui marchait mieux, mais pas à tous les coups.
La seconde, la personne qui réalise le travail principal, la création de la courbe de prévision, a besoin d'avoir sur un même écran l'ensemble des données et les résultats graphique pour la recherche de la courbe la plus adaptée. D’où l'actuel fonctionnement. Je conviens que le système que tu proposes pourrait inclure ce besoin en affichant 2 fenêtres mais je ne suis pas certain que cette solution soit "validée" pour des raisons pratiques.
Je regarde ça en interne.
En attendant, je suis toujours preneur d'une solution sur la gestion de la mémoire.

Merci
Libre Office 6.1.5 sous Windows 10
Avatar de l’utilisateur
njhub
Membre enthOOusiaste
Membre enthOOusiaste
Messages : 495
Inscription : 18 juin 2017 05:43
Localisation : 976

Re: Taille limite et performance d'un classeur ODS

Message par njhub »

Bonjour piloch,
Bonjour.
Merci de cette proposition. elle permet effectivement de gagner un peu en taille de fichier.
:oops: 16%, un peu...
Allez à la station service, prenez 50 litres d'essence, passez à la caisse et payez pour 58 litres...

Prenez le Qmax de la Dordogne ajoutez 16%, bonjour les dégâts...

Je ferme cette parenthèse pour vous indiquer une macro, qui n'autorise le recalcul qu'à la demande.

Ce faisant on peut travailler tranquillement, lors du recalcul, les valeurs se mettent à jour, mais pas les graphiques.
J'ai trouvé une parade simple à mettre en oeuvre, enregistrer le fichier puis l'actualiser, le recharger chez LO, et le tour est joué.

Vous trouverez cette macro à l'adresse ci-dessous
https://listarchives.libreoffice.org/fr ... 37173.html
LibreOffice 7.5.9.2.M1 (x64) FR-YT 05/12/23
OS : Windows 11.0
Avatar de l’utilisateur
piloch
NOOuvel adepte
NOOuvel adepte
Messages : 13
Inscription : 28 août 2012 11:33

Re: Taille limite et performance d'un classeur ODS

Message par piloch »

Bonjour njhub,
Comme le disait Einstein, tout est relatif :idea:
Je conviens aisément qu'une économie de 16% ne soit pas anodine. Mon "un peu" n'étant que relatif aux effets sur le comportement puisque le même fichier avec une taille divisée par 2 à les mêmes problèmes.

Je vais installer la macro pour voir si cela permet de solutionner mon problème.

Pour la parade, certes, cela garanti la mise à jour mais ce n'est pas du tout opérationnel dans mon contexte. Le fichier sert lors de la réalisation de prévision, le prévisionniste fait des hypothèses, des scénarios de pluie différents et le but est qu'il obtienne, au moment de la saisie, son résultat. En période d’inondation, il n'a pas le temps de fermer et ouvrir le fichier à chaque hypothèses.

L'origine de ma demande vient d'ailleurs de la : comme à partir d'un moment (plusieurs hypothèses testées), les graphiques ne se mettent plus à jour, le prévisionniste peut ne pas s'en rendre compte et avoir une mauvaise interprétation.

Je reviens vers vous après avoir testé la macro.

Merci encore de votre aide et du temps passé.
Libre Office 6.1.5 sous Windows 10
Avatar de l’utilisateur
piloch
NOOuvel adepte
NOOuvel adepte
Messages : 13
Inscription : 28 août 2012 11:33

Re: Taille limite et performance d'un classeur ODS

Message par piloch »

Bonjour.
J'ai profité du long we pour faire de nouveaux tests sur mon fichier.
Par rapport au besoin, la macro proposée ne fait vraiment pas l'affaire et ne corrige en rien le problème sur le fichier original.
Le seul moyen d'avoir un fichier ou la mise à jour ne s'interrompt pas au bout de XX essais est de découper le fichier en 4 fichiers (et encore, je ne suis pas certain qu'avec le temps et un grand nombre de modifications, cela ne finisse pas aussi par cafouiller)
Je ne suis d'ailleurs pas sûr que cette solution soit acceptable par les utilisateurs (complexification de la tâche car il faudra retrouver lequel est le bon fichier et éventuellement naviguer d'un fichier à l'autre alors qu'il existe déjà de multiples outils à consulter en cas de risque de crue).
Si vraiment je n'ai pas de solution pour augmenter la capacité de mémoire, il faudra sans doute que je cède à ceux qui veulent revenir à la suite payante qui était utilisée avant et sur laquelle ces erreurs ne se produisait pas.

Je vais attendre encore un peu au cas ou l'un d'entre vous à une solution coté mémoire (ou une nouvelle idée lumineuse toute différente) puis je fermerai ce post.

Merci à tous.
Libre Office 6.1.5 sous Windows 10
Avatar de l’utilisateur
OOotremer971
ManitOOu
ManitOOu
Messages : 2744
Inscription : 16 avr. 2010 13:31

Re: Taille limite et performance d'un classeur ODS

Message par OOotremer971 »

Bonjour,
piloch a écrit :les graphiques ne se mettent plus à jour (sauf si on fait une édition du graphique, auquel cas, il fait, pendant le temps de l'édition, la mise à jour du résultat).
Une solution par macro est peut-être envisageable sur ce point en particulier (actualisation des graphiques). Le cas échéant il faudra poursuivre en section macro de ce forum et si le fichier n'est pas trop confidentiel, le joindre intégralement sera certainement un plus non négligeable. :idea:
piloch a écrit :PS : Vu que le problème n'apparait que sur le fichier complet, je ne sais pas comment je pourrais mettre un exemple sur le site.
Tu peux le déposer sur le site https://www.cjoint.com/ qui accepte des fichiers jusqu'à 15 mo et nous transmettre le lien pour y accéder.
A+
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
Avatar de l’utilisateur
piloch
NOOuvel adepte
NOOuvel adepte
Messages : 13
Inscription : 28 août 2012 11:33

Re: Taille limite et performance d'un classeur ODS

Message par piloch »

Bonjour.
Après avoir échangé en interne avec les différents acteurs du projet, la solution d'une macro ne va pas être retenue. En effet, le fichier est amené à évoluer régulièrement (au fur et à mesure de la survenance de nouveaux événements) et il faudrait alors, à un moment ou à un autre, réactualiser cette macro.
L'idée de base étant d'être autonome sur la gestion et l 'évolution du fichier, une macro (dans un langage non maîtrisé aujourd'hui) va à l'encontre de ce besoin.
Ce n'est pas grave, nous allons trouver une autre solution.

Merci à tous ceux qui ont pris du temps pour regarder et nous aider dans la mise en place de notre fichier.
Libre Office 6.1.5 sous Windows 10
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25181
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: Taille limite et performance d'un classeur ODS

Message par Dude »

piloch a écrit :Ce n'est pas grave, nous allons trouver une autre solution.
Creuse la piste Base pour héberger tes données.
Crée des requêtes pour extraire les informations voulues.
Puis sers toi de Calc pour la fabrication des graphiques basés sur leur résultat.
piloch a écrit :Il est composé de [...] 122 graphiques.
Nul doute que ce chiffre impressionnant pourrait être éclaté par thématique et donc réduit à un plus petit nombre de classeurs.
Avatar de l’utilisateur
piloch
NOOuvel adepte
NOOuvel adepte
Messages : 13
Inscription : 28 août 2012 11:33

Re: [Résolu] Taille limite et performance d'un classeur ODS

Message par piloch »

Bonjour Dude et merci de tes propositions.
Effectivement, la piste de Base va faire partie de nos réflexions pour l'évolution nécessaires du fichier.
Pour ce qui est des 122 graphiques (en fait 120), la difficulté est de vouloir mettre à disposition du prévisionniste un fichier unique pour l'ensemble des tronçons (au nombre de 15) avec pour chaque tronçon de multiples informations.
Du coup, il y a réellement 4 graphiques par tronçon mais qui sont présent 2 fois, la première sur la page qui sert à l'agent qui réalise le fichier et qui contient tous les calculs et toutes les recherches pour déterminer la courbe la plus adéquate. Cette page est non accessible pour l'utilisateur final. Et 4 graphiques, copie du résultat du travail sur la page destiné au prévisionniste.
On arrive donc à 15 x 4 x 2 = 120.
Libre Office 6.1.5 sous Windows 10