select case ou isnull dans la base de données hyperfile
Anonyme
Bonjour,

il n'existe pas une commande CASE :

Voici un extrait de ma requete qui est composé de bcp de divisions ....
le but c'est de controler que l'on ne divise par 0, sinon cela entraine un KO

select CASE
when (STATS.LF_KO + STATS.LF_OK) = 0 then 0
when (STATS.LF_KO + STATS.LF_OK) > 0 then STATS.TROIS_PTS_OK / (STATS.LF_KO + STATS.LF_OK) * 100
end
......

ou une fonction ISNULL(valeur, valeur si nulle)

Merci de votre aide ...pour les remplacer

Contribution le : 01/12/2005 14:09
Créer un fichier PDF de la contribution Imprimer


Re: select case ou isnull dans la base de données hyperfile
Utilisateur WDF
Inscrit:
25/10/2005 16:20
De Tours
Post(s): 74
Bonjour.

JE pense que la focntion SELON devrai t'aider

SELON (STATS.LF_KO + STATS.LF_OK)
cas 0
.... ton code
Autre cas
... ton code
fin ca devrait etre bon

Contribution le : 01/12/2005 14:22
Créer un fichier PDF de la contribution Imprimer


Re: select case ou isnull dans la base de données hyperfile
Anonyme
Bonjour,

en fait il s'agit de code SQL et non pas de code WINDEV ...

je ne crois pas que SELON focntionne dans une requete SQL hyperfile, en tt cas je n'ai pas réussi !


Contribution le : 01/12/2005 14:27
Créer un fichier PDF de la contribution Imprimer


Re: select case ou isnull dans la base de données hyperfile
Utilisateur WDF
Inscrit:
25/10/2005 16:20
De Tours
Post(s): 74
Je ne croi que cela soit possible en SQL ou alors je n'ai pas de connaissance assez poussé en la matiére Car si je ne m'abuse le SQL permet Toute Modification dans les tables La lecture et le calcul et non la gestion de résultat sous condition donc selon moi tu va devoi gérer ça avec du code aprés ta requête de selection de tes champs

Contribution le : 01/12/2005 14:31
Créer un fichier PDF de la contribution Imprimer


Re: select case ou isnull dans la base de données hyperfile
Anonyme
Les requete aces du case ne marchent pas sur de fichiers hyperfile elles ne marchent que sur des bases du type ORACLE

Contribution le : 01/12/2005 14:55
Créer un fichier PDF de la contribution Imprimer


Re: select case ou isnull dans la base de données hyperfile
Anonyme
en fait c'est possible en SQL sous sybase ou sql server mais a priori pas sous hyperfile ...

je me disait que qqn avait deja peut eu ce genre de probleme.


je peux essayer autre chose ...
Si ma requete me renvoie 3 infos
TOTO 1 0
TATA 3 0

est ce que je peux dans WINDEV afficher ma table avec

TOTO 1 0 1/0
TATA 3 0 3/0

?? ca va coincer ?

Contribution le : 01/12/2005 14:56
Créer un fichier PDF de la contribution Imprimer


Re: select case ou isnull dans la base de données hyperfile
Utilisateur WDF
Inscrit:
25/10/2005 16:20
De Tours
Post(s): 74
Citation :

TOTO 1 0 1/0
TATA 3 0 3/0


Je ne comprend pas cette partie désoler

Contribution le : 01/12/2005 14:59
Créer un fichier PDF de la contribution Imprimer


Re: select case ou isnull dans la base de données hyperfile
Anonyme
idem tu vas planter car 1/0 ou 3/0 va faire planter windev car division par 0 interdit

Contribution le : 01/12/2005 15:03
Créer un fichier PDF de la contribution Imprimer


Re: select case ou isnull dans la base de données hyperfile
Anonyme
je repose une autre question...:

si ma requete renvoie 3 infos

est ce que je peux facilement affichée d'autres infos dans ma table qui appelle cette requete et qui sont le résultat de calcul en entre ces infos ?

si oui, je peux alors faire des controles pour eviter la division par 0 ...

comment ca marche ?


Précision je débute sous WINDEV ...alors que g des connaissances en SQL


MERCI A VOUS !!!!

Contribution le : 01/12/2005 15:17
Créer un fichier PDF de la contribution Imprimer


Re: select case ou isnull dans la base de données hyperfile
Stagiaire WDF
Inscrit:
01/12/2005 15:06
Post(s): 10
Si tu travaille avec une table liée tu a tes 3 premieres colonnes qui sont liées avec les resultats de ta requete
tu ajoute une autre colonne qui n'est pas lié
et la dans ton code tu mets

e_i est un entier
pour e_i=1 a nom_table..occurence

si nom_table.valeur3[e_i]<>0 alors
nom_table.valeur4[e_i]=nom_table.valeur2[e_i]/nom_table.valeur3[e_i]
fin
fin
en esperant que cela va t'aider

Contribution le : 01/12/2005 15:25
Créer un fichier PDF de la contribution Imprimer


Re: select case ou isnull dans la base de données hyperfile
Utilisateur WDF
Inscrit:
25/10/2005 16:20
De Tours
Post(s): 74
Tes calculs sont présent de ta requete sql je suppose donc oui san sproble tu peu les afficher dans ta table.

Pour les controle utilise un si tout simplement

Regarde dans l'aide a TableAjouteLigne() tu y verra comment ajouter tes lignes

pour t'éclairer pour remplir une table avec une requete sql avec un controle je ferai sa

hexecute requetesql.....
Hlitpremier(nomrequete)
TantQue pas hendehors
Si Val2<>0 alors
Variable=val1/val2
sinon Variable=KO
TableAjouteLigne(table1,requete.val1,requete.val2,variable)
hlitsuivant
fin
hannuledéclaration

Contribution le : 01/12/2005 15:29
Créer un fichier PDF de la contribution Imprimer


Re: select case ou isnull dans la base de données hyperfile
Anonyme
Merci à tous ceux qui m'ont repondu je regarde tt ca des ce soir !

bonne soirée et pt surement à bientot ...si je coince

Contribution le : 01/12/2005 17:26
Créer un fichier PDF de la contribution Imprimer


Re: select case ou isnull dans la base de données hyperfile
Anonyme
Citation :

madeuh a écrit:
Si tu travaille avec une table liée tu a tes 3 premieres colonnes qui sont liées avec les resultats de ta requete
tu ajoute une autre colonne qui n'est pas lié
et la dans ton code tu mets

e_i est un entier
pour e_i=1 a nom_table..occurence

si nom_table.valeur3[e_i]<>0 alors
nom_table.valeur4[e_i]=nom_table.valeur2[e_i]/nom_table.valeur3[e_i]
fin
fin
en esperant que cela va t'aider



super !! ca marche enfin presque ...
a l'affichage on a 0.00 qd je selectionne cette valeur, ou double clique dessus alors j'ai la valeur correcte ...

j'ai essayé un refraichissement() que dalle !
ou fallait -il mettre ce code ? le pb vient peut etre de la ?

Encore merci pour tt !!
a+

Contribution le : 01/12/2005 23:11
Créer un fichier PDF de la contribution Imprimer


Re: select case ou isnull dans la base de données hyperfile
Anonyme
Plus personne pour m'aider ???
dommage je suis si pret du but ...

Contribution le : 02/12/2005 12:09
Créer un fichier PDF de la contribution Imprimer


Re: select case ou isnull dans la base de données hyperfile
thierry.vicomte@vicomte.fr
Et si tu mets ce code dans le code d'affichage de ligne de ta table, cela devrait fonctionner

si nom_table.valeur3[table]<>0 alors
nom_table.valeur4[table]=nom_table.valeur2[table]/nom_table.valeur3[e_i]
fin

Contribution le : 03/12/2005 01:01
Créer un fichier PDF de la contribution Imprimer


Re: select case ou isnull dans la base de données hyperfile
Laurent
Je suis un debutant...

ou dois je mettre ce code ?
peux tu me décrire la manip pour aller ecrire ce code ?


Merci

Contribution le : 05/12/2005 13:39
Créer un fichier PDF de la contribution Imprimer


Re: select case ou isnull dans la base de données hyperfile
Stagiaire WDF
Inscrit:
01/12/2005 15:06
Post(s): 10
tu selectionne ta table tu appuie sur F2 et tu as je crois affichage d'une ligne j'ai pas de wd sous les yeux

Contribution le : 05/12/2005 14:08
Créer un fichier PDF de la contribution Imprimer


Re: select case ou isnull dans la base de données hyperfile
Laurent
Merci a tous !!

j'avais mis le code dans initialisation ...
maintenant ca marche !!


Ne vous inquietez pas je reviendrai bientot avec d'autres pb !



ciao !

Laurent

Contribution le : 05/12/2005 17:49

Edité par drcharly93 sur 5/12/2005 23:42:20
Créer un fichier PDF de la contribution Imprimer


Re: select case ou isnull dans la base de données hyperfile
laurent.kra@gmail.com
J'ai exactement le meme soucis
la solution est effectivement d'utiliser la clause CASE...WHEN...THEN...END
Mais cette clause n'est pas du SQL c'est du PLSQL
qui n'est pas pas reconnu par WinDev (Warning dans le kouglof) mais qui peu tout de meme etre executer sans probleme uniquement sur une Base de donnée Oracle,Sql,autres... mais pas HyperFile.Comme c'est mon cas il me faut aussi manipuler la requette apres son execution, voila comment passer de 1 petite clause à une bonne centaine de lignes.
Tout de suite j'aime bcp moin le HF.
Bon je regresse au codage bourrin c'est partit.
Bon appétit bien sure
@+

Contribution le : 08/06/2006 12:38
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant




Enregistrer votre réponse
CompteNom   Mot de passe   Authentification
Message:


Vous ne pouvez pas débuter de nouveaux sujets.
Vous pouvez voir les sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
Visualiser tous les Partenaires...
WinDev, WebDev, WinDev Mobile et HyperFile sont des marques déposées par PCSoft. |  Voter |  Legal |  Contact |   XOOPS 2.0.13.2