Bonjour,
Avec Jean-michel Pierre (Niort) nous avons fait échangé en direct pour ne pas trop polluer le forum avec mon problème.
Nous n'arrivons pas à des explications rationnelles pour expliquer pourquoi dans un rapport et sur un pied de groupe on ne puisse pas créer la fonction *accumulation* sur le champ "Montant" ou "Solde" (même punition - ceci est vrai également pour une autre fonction : maximum, minimum...)
Je mets la base en question:
http://www.cjoint.com/confirm.php?cjoint=0DtlN6yuTqH
Il faut aussi préciser que pour certaines bases la fonction est rendue y compris dans mon environnement.
J'étais en 3.6.5 je suis passé en 3.6.6 au cas où ... : pas mieux
Vous observerez qu'il y a 3 tables en relation, est-ce là la difficulté ? le rapport est créé d'après une requête utilisant des champs des 3 tables.
Je redis que quand bien même, il y aurait quelque chose de pas très "orthodoxe" dans la structure de la Base, il ne devrait pas y avoir de plantage de l'application pour autant.
Vos idées seront les bienvenues.
A+
Bonjour
fricard Claude wrote
pourquoi dans un rapport et sur un pied de groupe on ne puisse pas créer
la fonction *accumulation* sur le champ "Montant" ou "Solde"
J'y arrive en tout cas avec ce que j'ai là tout de suite sous la main:
Version Windows XP 4.0.1.1 (Build ID:
2c0c17a6e4bee0ee28131ea4bdc47edc700d659)
0DtlN6yuTqH_aide_claude.odb
<http://nabble.documentfoundation.org/file/n4052092/0DtlN6yuTqH_aide_claude.odb>
Le rapport fonctionne-t-il dans ton environnement ?
Cela dit, pour répondre à l'autre aspect de la question, non, un plantage
ne devrait pas se produire en effet...
Cordialement
Pierre-Yves
Bonjour Claude,
Bonjour,
Avec Jean-michel Pierre (Niort) nous avons fait échangé en direct pour
ne pas trop polluer le forum avec mon problème.
Nous n'arrivons pas à des explications rationnelles pour expliquer
pourquoi dans un rapport et sur un pied de groupe on ne puisse pas
créer la fonction *accumulation* sur le champ "Montant" ou "Solde"
(même punition - ceci est vrai également pour une autre fonction :
maximum, minimum...)
Avec :
Version 4.0.2.2 (Build ID: 4c82dcdd6efcd48b1d8bba66bfe1989deee49c3)
TinderBox: MacOSX TDF Release, Branch:libreoffice-4-0, Time:
2013-03-26_15:52:16
ton fichier, et en prenant le rapport R_SOLDES_IMPAYES :
Accumulation en Pied de Page : OK - valeur de 2940 affiché
Accumulation en Pied de Groupe :
- je clique sur le champ dans le Pied de Groupe
- je clique sur l'onglet Données
- je choisis Fonction
- je choisis MONTANT dans la liste "Champ de Données"
- je choisis la fonction Accumulation
- je choisis Etendue : Rapport
LO part dans les vapes, le ballon de plage OSX se met à tourner...force
kill requis pour tuer le processus.
Alex
Pierre-Yves,
A ta question: */le rapport fonctionne t 'il dans ton environnement ?/* la réponse est oui.
J'ai cependant remarqué que c'est le résultat d'une fonction définie par l'utilisateur, alors que moi , après avoir crée le champ dans Données je renseigne Type de champ de données :Fonction . Champ de données :MONTANT et accumulation, champ: MONTANT et Fonction: Accumulation. Si je crée cette fonction dans me pied de page: no PB , par contre la même chose dans le Pied de groupe ; Interlude ! plantage !
Donc la solution c'est, si j'entends bien, de créer une fonction utilisateur.
Autre question peut-on créer une fonction sur un Alias ( "Solde" en l'occurrence) ou autrement dit, l'alias porte t' il implicitement le même type de données (décimal par exemple) que les éléments qui l'ont généré ? (à savoir: MONTANT et ACOMPTE dans notre cas).
A+
Claude
Re-bonjour,
Bonsoir Claude,
Dans les tests évoqués par Claude, de cette manière je n'ai pas de plantage.
Peux-tu tester : Étendue > Groupe
plutôt que : Étendue > Rapport
J.M
Bonsoir Jean-Michel,
Dans les tests évoqués par Claude, de cette manière je n'ai pas de
plantage.
Peux-tu tester : Étendue > Groupe
plutôt que : Étendue > Rapport
Si je choisis Montant comme champ, je ne peux pas choisir "Etendue", car
dès que je choisis Accumulation dans "Fonction", LO perd les pédales...
Alex
Si je choisis Montant comme champ, je ne peux pas choisir "Etendue", car
dès que je choisis Accumulation dans "Fonction", LO perd les pédales...Alex
J'avais émis l'idée que si le champ de la Section Détail était déjà regroupé dans le requête, il ne pouvait plus être Accumulé dans le Pied de page de Groupe en particulier s'il l'était aussi dans le Pied de page de Rapport.
Je vais prendre un peu de distance pendant quelques jours avec mes activités "informatiques", je reprendrai le fil de la conversation dans la semaine prochaine. Il semble tout de même que lorsque l'on crée une fonction utilisateur, l'on arrive à faire ce que l'on veut que ce soit de page ou de groupe, c'est le pied ... si je peux dire ainsi.
En tout cas merci à vous pour vos investigations.
Claude
Bonjour
fricard Claude wrote
A ta question: */le rapport fonctionne t 'il dans ton environnement ?/*
la réponse est oui.
Ok 
fricard Claude wrote
J'ai cependant remarqué que c'est le résultat d'une fonction définie par
l'utilisateur
En effet... la création "assistée" de la fonction semble poser problème.
Comme au final ta démarche (suggérée par le logiciel) crée une fonction
j'ai préféré tester en la créant moi-même... et cela marche.
fricard Claude wrote
Donc la solution c'est, si j'entends bien, de créer une fonction
utilisateur.
Il semble oui...
fricard Claude wrote
Autre question peut-on créer une fonction sur un Alias ( "Solde" en
l'occurrence)
Oui... sous réserve de ne pas oublier la gestion des "null" comme
expliqué dans cette FAQ:
https://wiki.documentfoundation.org/FR/FAQ/Base/125
J'ai appliqué cette méthode (ifnull) dans la requête source et
créé une autre fonction utilisateur pour ce champ:
0DtlN6yuTqH_aide_claude.odb
<http://nabble.documentfoundation.org/file/n4052195/0DtlN6yuTqH_aide_claude.odb>
Cordialement
Pierre-Yves
Bonjour,
Je vais essayer de résumer la situation relative à la mise en place de la fonction accumulation.
2 méthodes de créer la fonction: soit en utilisant la _fonction utilisateur_ dans le pied de groupe ou de page et là à priori ça fonctionne. Soit en paramétrant un champ texte avec onglet Données- Type de champ de données: /Fonction/, champ de données : /le champ sur lequel se fait l'accumulation/; Fonction : /accumulation/. Si la fonction est dans le Pied de page : étendue :/Rappor//t/ ça fonctionne - en Pied de groupe : ça ne fonctionne pas, l'application part en vrille, la main ne peut être reprise qu'en "tuant" la tâche Soffice.bin. Soffice.exe
L'accumulation peut se faire sur un "alias" mais ainsi que l'a dit Pys , il faut que les champs ne soient pas 'null" .
Est-ce quelqu'un a pu faire toutes les manips énoncées avec la version 4.0 et sous Win 7 ?
merci aux intervenants
A+
Claude