Nombres entiers à 8 décimales

Bonjour,

J’ai dans mes ODT les attributs supplémentaires au format Numérique décimal qui ont 8 décimales après la virgule et j’en voudrais seulement 2.

Tout essayé, Limites et précisions dans la config, functions.lib.php, toujours pareil

Une idée s’il vous plaît ?
Merci beaucoup

Ah mince, pas d’inspiration ?

Bonjour,
Non, pas d’inspiration.
On ne comprend pas la question. Un nombre entier n’a pas de décimales. Alors, un nombre entier avec 8 décimales, et de plus après la virgule, on ne sait pas ce que c’est.

Mea culpa moi, je viens de corriger, c’est bien un nombre Décimal, pas un Entier !

Bonjour,

Vous pouvez nous mettre une capture d’écran de votre configuration des attributs supplémentaire ?
Normalement on peut définir le nombre de décimal.

Sinon une autre solution serrait d’utiliser un nouvel attribut supplémentaire de type calculé avec comme calcul : [code]
round($object->array_options[options_xxxxxx],2)[/code

Bonjour,

Désolé pour la réponse tardive.
Voici les copies d’écran

j’ai essayé d’ajouter la fonction dans un nouvel attribut pour le champs calculé, mais sans résultat, rien ne s’affiche (copie d’écran 3) :unhappy:

Pièces jointes :

Bonjour,

J’aurais besoin de quelques explications car c’est pas clair ce que vous voulez arrondir.

En mettant 24,2 au lieu de 24.8 ?
On ne peut pas faire le round() de la variable elle même ça n’a pas de sens ça devrait être un autre variable.

Bonjour
C’est plutôt au niveau de l’ODT qu’il faut voir l’arrondi et non dans l’attribut lui-même.
Voir la fonction ARRONDI(), ROUND() ou le formatage dans LibreOffice ?
@+

Edit : Voir https://forum.openoffice.org/fr/forum/viewtopic.php?p=211376oir https://forum.openoffice.org/fr/forum/viewtopic.php?p=211376

Bonjour Philazerty,

J’avais pensé faire comme toi au début mais tout ce que tu montre marche que pour le tableur et pas pour le writer

Impossible de modifier 24,8 en 24,2 :unhappy:

Pour l’arrondi, ça ne marche effectivement pas pour le writer !

Bonjour,

Par contre la variable calculée devrait marché mais comme expliqué plus haut tel que vous l’utilisez ça ne peut pas marcher.
Pouvez-vous m’expliquer quel extrafield doit être arrondi et stocké dans quelle variable ?

Bonjour,

capture Décimal 1.jpg :
À la base je souhaitais que ce soit l’extrafield « Théorie (heures) »
Mais comme tu l’as demandé, j’ai créé un nouvel extrafield appelé « Théorie calculée » qui reprend l’extrafield « Théorie (heures) » pour l’arrondir

capture Décimal2.jpg
Je reprends "Théorie (heures) pour l’arrondir

capture Décimal 3.jpg
Pas de résultat affiché, du coup c’est une erreur de calcul ?

Pièces jointes :

Désolé mais entre ce que vous écrivez et ce qui est configuré il y a des différences que je ne comprends pas.

Capture Décimal 1 :
Il y a 4 Extrafields de déclarés :
1- Théorie (heures)
2- Théorie (taux horaires)
3- Pratique (heures)
4- Pratique (taux horaires)

Il n’y a pas de « Théorie calculée » sur votre screen
De plus la formule php est dans « Théorie (heures) » ce qui ne va pas

Décimal 2 :
Vous essayez d’arrondir la variable sur elle même ça ne peut pas marcher.
VOus devriez avoir un extrafied « Théorie Calculé » qui arrondie « Théorie (heure) ».
Mais la vous faites un extrafied « Théorie (heure) » qui arrondie « Théorie (heure) »???

Décimal 3:
On a enfin le champ théorie calculé mais comme il n’est pas dans les copie d’écran Décimal 1 et 2 je ne sais pas ce que c’est.

Bonjour,
Quelque chose me gêne.
Le champ print_theorie_duree se calcule par rapport à lui-même ?
Ça me semble douteux, même si je n’ai pas vérifié.
J’introduirais le calcul sur un nouveau champ.

Bonjour,

Désolé, un souci de cache je pense, je change les nom des copies d’écran car ce sont d’anciennes copies d’écran :

capture CopieEcran1.jpg :
À la base je souhaitais que ce soit l’extrafield « Théorie (heures) »
Mais comme tu l’as demandé, j’ai créé un nouvel extrafield appelé « Théorie calculée » qui reprend l’extrafield « Théorie (heures) » pour l’arrondir

capture CopieEcran2.jpg
Je reprends "Théorie (heures) pour l’arrondir

capture CopieEcran3.jpg
Pas de résultat affiché, du coup c’est une erreur de calcul ?

Pièces jointes :

Bonjour,

La formule n’est pas bonne.

[code]
round($object->array_options[options_print_theorie_duree],2)[/code

Bon, on avance, ça l’affiche comme il faut, il faut juste que ça s’affiche sur l’ODT maintenant, et ce sera bon.

je regarderai ça demain, merci de ton aide en tout cas !

Bonjour,

Du coup je vois bien le champs, mais dans mon ODT, s’il n’y a pas d’erreur, le résultat quant à lui ne s’affiche pas.
j’ai surligné dans mon ODT le champs

Je vous transmets la copie et l’ODT

Pièces jointes :

Bonjour,

Pas de raison que ça ne s’affiche pas.

Pourquoi l’avoir entouré de -! ?
Si vous supprimez ça donne quoi ?

Juste pour l’identifier dans le résultat final
En supprimant ça ne donne rien

Pièces jointes :