Writer : Impression impossible champs calculs contenant des champs fusion

Bonjour,

J’ai un document Writer dans lequel j’inclu des champs de bases de données et un champ “Definir une variable” dont la valeur est le produit de deux champs de la base.

  • La base de données est un classeur Calc que je relie a mon document Writer en faisant Menu Edition > Changer base de données, etc.
  • Puis, j’affiche ma base en faisant Menu Affichage > Sources de données…
  • En sélectionnant un enregistrement, par exemple le deuxième de la base et en utilisant le bouton Données dans les champs, les champs se remplissent parfaitement et le champ calculé est mis a jour.
  • Mon problème est que si je veux imprimer la page mise à jour de mon document, le champ calculé se réinitialise avec les valeurs du premier enregistrement de la base alors que les autres champs affichent bien les valeurs du deuxième enregistrement

BaseTest.ods
TestLO.odt

Juste en passant, vous êtes sur le forum français. Ne serait-il pas plus simple et plus clair de poser la question en français? Cela peut se orriger en cliquant sur “éditer”, ç la fois dans la titre et en bas de la question.

Merci
Voilà c’est fait

La question est toujours en anglais.Après éditer, auriez-vous oublié de sauvegarder?

Non, mais il a fallu que j’enlève toutes les lettres accentuées les parenthèse, les slash … pffff
C’est mieux comme ça ?
Excusez c’est la première fois que j’utilise ce forum.

Y’a pas de mal. Je vais regarder les fichiers joints.

Je n’arrive pas à reproduire le phénomène: je ne suis pas allé jusqu’à imprimer, je me suis contenté de l’aperçu avant impression où tout est correct.

Il s’agit peut-être d’un problème de version. Ma machine de “production” qui vise la stabilité est encore en version 5.4 tandis que mes machines “expérimentales” sont au dernier cri en 6.1, mais elles sont derrière des pare-feux très restrictifs, si bien que transférer les fichiers est pénible.

Personnellement, je me méfie des possibilités réduites de manipulation des variables dans Writer. Je préfère référencer de façon basique une cellule (champ) de la feuille de calcul où la formule, aussi compliquée que souhaitable, effectue toute manipulation au sein de Calc qui offre énormément de souplesse et de fonctions.

Au cas où vous ne souhaiteriez pas modifier votre feuille pour ne pas la polluer, vous avez toujours la possibilité d’un ajouter une autre sous forme d’onglet dans laquelle vous faites toutes vos transformations (brouillon) et vous référencez cet onglet depuis Writer – c’est la partie “Feuille” dans la référence “Fichier.Feuille.Nom”.

Enfin, s’il s’agit réellement d’une base de données sur laquelle des requêtes doivent être faites, l’outil idéal est Base, car il possède un générateur de rapport spécialement adapté à ce genre de “sport”. Néanmoins, le “ticket d’entrée” en terme d’apprentissage est plus élevé. Il y a cependant un intérêt car on peut réaliser les requêtes dans un “framework” comme Django et traiter les états (rapports) de façon souple et indépendante.

Pour tester l’impression vous pouvez faire un export PDF.

L’export PDF n’est pas équivalent à une impression car cela nécessite une conversion supplémentaire. Par acquit de conscience, j’ai fait le test. Pas de problème ici. Il y a peut-être un souci du côté du profil utilisateur. Ma config est Linux/KDE (distro Fedora).

J’ai le problème aussi bien en impression qu’en export PDF.
Je ne vois pas où est le problème dans mon profil LibreOffice (où faut-il chercher?)
Ma version de LIbreOffice est 6.1.3.2 sous Linux/Ubuntu 18.04.1

J’ai reproduit l’erreur en version 6.1.2.1. Elle n’apparaît pas en impression seule (du moins ce que donne l’aperçu). En revanche, l’export PDF utilise systématiquement les valeurs du premier enregistrement dans le champ calculé. Comme je n’ai pas l’erreur en 5.4.x, c’est une régression de 6.x.

Soumettez un rapport de bug sur https://bugs.documentfoundation.org en y joignant vos 2 fichiers.

Je vous confirme que l’erreur n’apparaît pas en aperçu d’impression mais bien sur le papier ainsi que sur l’export PDF.
Je vous remercie beaucoup de m’avoir donné de votre temps.
Je soumet le bug.

C’est fait [https://bugs.documentfoundation.org/show_bug.cgi?id=121430] (tdf#121430)

Bonjour, pour reproduire le phénomène…
Une fois le document ouvert, pour connecter la feuille Calc il suffit de faire Menu Edition/Changer base de données… Dans le pavé Bases de données disponibles cliquer sur Parcourir sélectionner la feuille dans l’explorateur de fichiers, puis dans le pavé bases de données utilisée sélectionner la Feuille1 et cliquer sur le bouton Définir. Puis vous faites Menu Affichage/Source de données.Pour insérez un champ dans le document vous sélectionnez la colonne et vous faites un glisser/déposer dans le document (ou vous passez par le menu Insertion/ Champs /Base de données). Pour remplir les champs du document vous sélectionnez un enregistrement et vous cliquez sur le bouton “Données dans les champs”.
Vous verrez les champs se mettre à jour correctement.
L’utilisation de “Nom” ou de “Base.Feuille.Nom” donne le même résultat à partir du moment où il n’y a pas de variables homonymes dans le document.
C’est à l’impression que ça coince les champs/variables non calculés sont édités les autres sont réinitialisés.
Le comportement est le même avec une Base.
Je retiens bien sûr vos conseils pour contourner ce comportement, ce qui est malheureusement moins “élégant”.
Encore merci.