|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | |||
|
Membre Expert
![]() ![]() |
Salut
ce bout de code fonctionne à merveille dans la vue mais quand je le mets dans une PS j'ai une erreur. voici le code en question : Code :
Citation:
__________________
Bon courage ou Bonne Chance (selon le contexte) |
|||
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Frédéric Inscription : octobre 2002 Messages : 1 722 ![]() |
Bonjour,
Je dirais que la variable dans lequel vous renvoyez le résultat est de type numeric ou decimal ou float et donc quand le CASE renvoi le caractère '/', ca ne lui plait pas. |
|
|
00
|
|
|
#3 | |
|
Membre Expert
![]() ![]() |
Citation:
c'était ça effectivement mais pourquoi dans la requête ça passe malgré que le type de base du champ est numérique !!! comment puis-je le forcer dans la PS à prendre '/' quand c'est null merci encore
__________________
Bon courage ou Bonne Chance (selon le contexte) |
|
|
|
00
|
|
|
#4 | ||
|
Membre Expert
![]() Frédéric Inscription : octobre 2002 Messages : 1 722 ![]() |
Code :
Si le but de cette PS c'est de faire de la présentation de résultat, utilisez un varchar(xx). Si ce résultat vous souhaitez pouvoir l'utiliser dans d'autre calcul je vous déconseille de procéder ainsi. |
||
|
|
00
|
|
|
#5 |
![]() ![]() Claude RenouleaudDéveloppeur informatique Inscription : février 2006 Messages : 4 754 ![]() |
Salut
Ton paramètre de sortie étant de type DECIMAL il ne peut accepter un CHAR ("/" dans ton cas). Une solution: renvoie -1 au lieu de "/", et c'est au niveau de l'application que tu adaptes l'affichage des données. @+ Claudius
__________________
A la question technique que par MP/MV tu formuleras, la réponse aux oubliettes finira. |
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() ![]() |
Salut Cl@udius, effectivement c'est ce que j'ai fais.
__________________
Bon courage ou Bonne Chance (selon le contexte) |
|
|
00
|
|
|
#7 | ||
|
Membre Expert
![]() ![]() |
Salut
dans le même état d'esprit, j'ai une autre requête qui donne le résultat souhaité mais quand je l'ai convertis en PS j'ai eu une erreur de type "arithmetic overflow or division by zero has occured". voici mon code : Code :
__________________
Bon courage ou Bonne Chance (selon le contexte) |
||
|
|
00
|
|
|
#8 |
|
Membre éclairé
![]() Développeur informatique Inscription : octobre 2006 Messages : 435 ![]() |
Division par zéro :
Code :
a.energie_active / (cast(nullif(d.volume_mj_sortie,0) AS integer) * d.nombre_jour_reel) AS Taux_consommation
__________________
Si vous êtes libre, choisissez le Logiciel Libre. |
|
|
00
|
|
|
#9 | |
|
Membre Expert
![]() ![]() |
Citation:
__________________
Bon courage ou Bonne Chance (selon le contexte) |
|
|
|
00
|
|
|
#10 |
|
Membre éclairé
![]() Développeur informatique Inscription : octobre 2006 Messages : 435 ![]() |
Ah oui, désolé pour la précipitation, ça doit être donc un débordement du a un type de colonne qui ne supporte pas le résultat d'une multiplication.
__________________
Si vous êtes libre, choisissez le Logiciel Libre. |
|
|
00
|
|
|
#11 |
|
Membre Expert
![]() ![]() |
Bonjour !
je viens de trouver l'erreur, il s'agit de la taille d'une variable de type varchar bizarre que FB ne tronque pas le résultat mais le signal comme erreur arithmétique ou de conversion
__________________
Bon courage ou Bonne Chance (selon le contexte) |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com