Condition sur 2 champs
Résolu
pascalou83400
Messages postés
277
Date d'inscription
Statut
Membre
Dernière intervention
-
pascalou83400 Messages postés 277 Date d'inscription Statut Membre Dernière intervention -
pascalou83400 Messages postés 277 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Bonne année à tous et surtout la santé.
Je cherche à trier des champs dans une table, dans une table j'ai 2 champs qui gèrent l'emballage dans une fiche article, PAAPRIORITY=0 ou PAAPRIORITY=1 et PAADEFAULT =1 et je voudrais récupérer l'un ou l'autre par une condition c.a.d :
si PAAPRIORITY=1 on prend PAAPRIORITY=1 et si PAAPRIORITY=0 alors on prend PAADEFAULT =1
j'ai essayé avec ça dans select, mais je récupère les 2 champs
Case when PAAPRIORITY=0 then 1 else 0 end as FILTRAGE_Priorité
Bon j’espère que c'est clair mon explication.
Bonne soirée.
Pascal
Bonne année à tous et surtout la santé.
Je cherche à trier des champs dans une table, dans une table j'ai 2 champs qui gèrent l'emballage dans une fiche article, PAAPRIORITY=0 ou PAAPRIORITY=1 et PAADEFAULT =1 et je voudrais récupérer l'un ou l'autre par une condition c.a.d :
si PAAPRIORITY=1 on prend PAAPRIORITY=1 et si PAAPRIORITY=0 alors on prend PAADEFAULT =1
j'ai essayé avec ça dans select, mais je récupère les 2 champs
Case when PAAPRIORITY=0 then 1 else 0 end as FILTRAGE_Priorité
Bon j’espère que c'est clair mon explication.
Bonne soirée.
Pascal
A voir également:
- Condition sur 2 champs
- Supercopier 2 - Télécharger - Gestion de fichiers
- Excel cellule couleur si condition texte - Guide
- 2 ecran pc - Guide
- Faire 2 colonnes sur word - Guide
- Avoir 2 comptes whatsapp sur le même téléphone - Guide
3 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonsoir,
tu n'es pas du tout clair, peut-être avec quelques exemples?
et ainsi?
tu n'es pas du tout clair, peut-être avec quelques exemples?
et ainsi?
if(PAAPRIORITY=1,1,PAADEFAULT)
Bonjour yg_be,
Bonne année à toit et à toute ta famille et encore merci pour ton aide.
j'ai mis le code , mais il y a une erreur sur if.
Je vais essayer d’être plus clair, dans une fiche article j'ai la table emballage et j'ai 2 champs PAADEFAULT qui est toujours égal à 1 et j'ai PAAPRIORITY qui est égal à 1 si il existe, sinon il y a que PAADEFAULT=1.
Donc j'essaie de récupérer PAAPRIORITY et si il n'existe pas, je récupére PAADEFAULT.
ci-joint mon code :
SELECT STOCOMMENT as Commentaire,
article.ARTNOARTICLE as Code,
article.ARTSORT as Genre, case when artvariety<>'' then artspecies||' '||artvariety else artspecies end as Espece_Variete,
stocriteria1.pardesignation as Etat_lot,
artcriteria1.pardesignation as Diam_pot,
artpresentation.pardesignation as Litrage,
artcriteria3.pardesignation as Presentation,
artcriteria2.pardesignation as Presentation,
unvdesignation as Taille,
artcriteria4.pardesignation as Diam_tete,
artcriteria9.pardesignation as HT_total,
DEPOT.PARDESIGNATION as Site,
EMPLACEMENT.EMPDESIGNATION as Parcelle_lot,
stocriteria2.pardesignation as Marquage,
paaprivilegedpackage as Condition,
packaging.pacdesignation as Condition,
paaquantity as Qte_cond,
paaqtyprivilegedpackage as Nb_cond,
paaquantity*paaqtyprivilegedpackage as Qte_Roll,
paaqtyprivilegedpackage2 as Nb_plt_cam,
paaqtyprivilegedpackage3 as Metrage_cam,
paaquantity*paaqtyprivilegedpackage*paaqtyprivilegedpackage2*paaqtyprivilegedpackage3 as Qte_plt_cam,
article.ARTCRITERIA19 as Code_tri,
article.ARTCRITERIA19 as Code_tri,
artcriteria19.pardesignation as tri,
artcriteria8 as Initial_fourn,
article.ARTPRICEREFMARGIN as Tarif_PR,
trfcostvalue as Tarif_Palmacea,
artcriteria12.pardesignation as Notre_Selection,
STOBEGINDATEAVAILABLE,
STOADJUSTQTY,
STOQTYRESERVORDER,
Stostockdispo,
Stostockphysique,
ARTQTEN1 as Qte_N1,
ARTQTEN as Qte_N
FROM article article
left outer join PACKAGEARTICLE on paanoarticle=artnoarticle
left outer join artcost on trfnoarticle=artnoarticle
left outer join supplier on cusnocustomer=artmainsupplier
left outer join artpresentation on artpresentation.parcodeparam=article.artpresentation
left outer join unitevente on unvcode=artsize
left outer join artfamily on artfamily.parcodeparam=article.artfamilycode
left outer join artcriteria5 on artcriteria5.parcodeparam=article.artcriteria5
left outer join artcriteria1 on artcriteria1.parcodeparam=article.artcriteria1
left outer join artcriteria2 on artcriteria2.parcodeparam=article.artcriteria2
left outer join artcriteria3 on artcriteria3.parcodeparam=article.artcriteria3
left outer join artcriteria9 on artcriteria9.parcodeparam=article.artcriteria9
left outer join artcriteria4 on artcriteria4.parcodeparam=article.artcriteria4
left outer join artcriteria10 on artcriteria10.parcodeparam=article.artcriteria10
left outer join artcriteria11 on artcriteria11.parcodeparam=article.artcriteria11
left outer join artcriteria6 on artcriteria6.parcodeparam=article.artcriteria6
left outer join artcriteria7 on artcriteria7.parcodeparam=article.artcriteria7
left outer join artcriteria12 on artcriteria12.parcodeparam=article.artcriteria12
left outer join artcriteria13 on artcriteria13.parcodeparam=article.artcriteria13
left outer join artcriteria19 on artcriteria19.parcodeparam=article.artcriteria19
left outer join artcriteria8 on artcriteria8.parcodeparam=article.artcriteria8
Left outer join packaging on packaging.paccodepackaging=packagearticle.paaprivilegedpackage
inner join LOTSTOCK on STONOARTICLE=ARTNOARTICLE
Left outer join EMPLACEMENT on EMPLACEMENT. EMPCODE=STOLOCATEMPLACEMENT
left outer join STOCRITERIA1 on STOCRITERIA1.parcodeparam=LOTSTOCK.STOCRITERIA1
left outer join STOCRITERIA2 on STOCRITERIA2.parcodeparam=LOTSTOCK.STOCRITERIA2
Left outer join DEPOT on DEPOT.PARCODEPARAM=LOTSTOCK.STODEPOT
where artnoarticle<>'9995'
if(PAAPRIORITY=1,1,PAADEFAULT)
and stooutofdate<>1
and STODEPOT <>'ZZZ'
and trfnocostident=3
and ARTMAINSUPPLIER=6
Bonne année à toit et à toute ta famille et encore merci pour ton aide.
j'ai mis le code , mais il y a une erreur sur if.
Je vais essayer d’être plus clair, dans une fiche article j'ai la table emballage et j'ai 2 champs PAADEFAULT qui est toujours égal à 1 et j'ai PAAPRIORITY qui est égal à 1 si il existe, sinon il y a que PAADEFAULT=1.
Donc j'essaie de récupérer PAAPRIORITY et si il n'existe pas, je récupére PAADEFAULT.
ci-joint mon code :
SELECT STOCOMMENT as Commentaire,
article.ARTNOARTICLE as Code,
article.ARTSORT as Genre, case when artvariety<>'' then artspecies||' '||artvariety else artspecies end as Espece_Variete,
stocriteria1.pardesignation as Etat_lot,
artcriteria1.pardesignation as Diam_pot,
artpresentation.pardesignation as Litrage,
artcriteria3.pardesignation as Presentation,
artcriteria2.pardesignation as Presentation,
unvdesignation as Taille,
artcriteria4.pardesignation as Diam_tete,
artcriteria9.pardesignation as HT_total,
DEPOT.PARDESIGNATION as Site,
EMPLACEMENT.EMPDESIGNATION as Parcelle_lot,
stocriteria2.pardesignation as Marquage,
paaprivilegedpackage as Condition,
packaging.pacdesignation as Condition,
paaquantity as Qte_cond,
paaqtyprivilegedpackage as Nb_cond,
paaquantity*paaqtyprivilegedpackage as Qte_Roll,
paaqtyprivilegedpackage2 as Nb_plt_cam,
paaqtyprivilegedpackage3 as Metrage_cam,
paaquantity*paaqtyprivilegedpackage*paaqtyprivilegedpackage2*paaqtyprivilegedpackage3 as Qte_plt_cam,
article.ARTCRITERIA19 as Code_tri,
article.ARTCRITERIA19 as Code_tri,
artcriteria19.pardesignation as tri,
artcriteria8 as Initial_fourn,
article.ARTPRICEREFMARGIN as Tarif_PR,
trfcostvalue as Tarif_Palmacea,
artcriteria12.pardesignation as Notre_Selection,
STOBEGINDATEAVAILABLE,
STOADJUSTQTY,
STOQTYRESERVORDER,
Stostockdispo,
Stostockphysique,
ARTQTEN1 as Qte_N1,
ARTQTEN as Qte_N
FROM article article
left outer join PACKAGEARTICLE on paanoarticle=artnoarticle
left outer join artcost on trfnoarticle=artnoarticle
left outer join supplier on cusnocustomer=artmainsupplier
left outer join artpresentation on artpresentation.parcodeparam=article.artpresentation
left outer join unitevente on unvcode=artsize
left outer join artfamily on artfamily.parcodeparam=article.artfamilycode
left outer join artcriteria5 on artcriteria5.parcodeparam=article.artcriteria5
left outer join artcriteria1 on artcriteria1.parcodeparam=article.artcriteria1
left outer join artcriteria2 on artcriteria2.parcodeparam=article.artcriteria2
left outer join artcriteria3 on artcriteria3.parcodeparam=article.artcriteria3
left outer join artcriteria9 on artcriteria9.parcodeparam=article.artcriteria9
left outer join artcriteria4 on artcriteria4.parcodeparam=article.artcriteria4
left outer join artcriteria10 on artcriteria10.parcodeparam=article.artcriteria10
left outer join artcriteria11 on artcriteria11.parcodeparam=article.artcriteria11
left outer join artcriteria6 on artcriteria6.parcodeparam=article.artcriteria6
left outer join artcriteria7 on artcriteria7.parcodeparam=article.artcriteria7
left outer join artcriteria12 on artcriteria12.parcodeparam=article.artcriteria12
left outer join artcriteria13 on artcriteria13.parcodeparam=article.artcriteria13
left outer join artcriteria19 on artcriteria19.parcodeparam=article.artcriteria19
left outer join artcriteria8 on artcriteria8.parcodeparam=article.artcriteria8
Left outer join packaging on packaging.paccodepackaging=packagearticle.paaprivilegedpackage
inner join LOTSTOCK on STONOARTICLE=ARTNOARTICLE
Left outer join EMPLACEMENT on EMPLACEMENT. EMPCODE=STOLOCATEMPLACEMENT
left outer join STOCRITERIA1 on STOCRITERIA1.parcodeparam=LOTSTOCK.STOCRITERIA1
left outer join STOCRITERIA2 on STOCRITERIA2.parcodeparam=LOTSTOCK.STOCRITERIA2
Left outer join DEPOT on DEPOT.PARCODEPARAM=LOTSTOCK.STODEPOT
where artnoarticle<>'9995'
if(PAAPRIORITY=1,1,PAADEFAULT)
and stooutofdate<>1
and STODEPOT <>'ZZZ'
and trfnocostident=3
and ARTMAINSUPPLIER=6
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
il est possible de récupérer l'un ou l'autre, nous sommes en train de tester pour obtenir une solution.
j'essaie de comprendre pourquoi
pour comprendre cela, j'ai besoin de comprendre pour quelles combinaisons de valeur de PAAPRIORITY et de PAADEFAULT le résultat retourné par
et donc je te demande de me montrer des réponses à la requête suivante, et de m'expliquer pourquoi la valeur de IIF(PAAPRIORITY=1,1,PAADEFAULT) ne te convient pas.
j'essaie de comprendre pourquoi
IIF(PAAPRIORITY=1,1,PAADEFAULT)ne te convient pas.
pour comprendre cela, j'ai besoin de comprendre pour quelles combinaisons de valeur de PAAPRIORITY et de PAADEFAULT le résultat retourné par
IIF(PAAPRIORITY=1,1,PAADEFAULT)ne te convient pas.
et donc je te demande de me montrer des réponses à la requête suivante, et de m'expliquer pourquoi la valeur de IIF(PAAPRIORITY=1,1,PAADEFAULT) ne te convient pas.
SELECT PAAPRIORITY, PAADEFAULT, IIF(PAAPRIORITY=1,1,PAADEFAULT) FROM ...
IIF(PAAPRIORITY=1,1,PAADEFAULT) et bien cela me renvoie pour le même article une ligne avec PAAPRIORITY=1 et une ligne avec PAADEFAULT=1
donc j'ai 2 lignes avec les 2 emballages differents et moi je veux l'un ou l'autre c.a.d soit le PAAPRIORITY si il existe et sinon le PAADEFAULT, mais je veux qu'une seule ligne par article pas de doublon.
je ne sais pas si c'est clair mon explication, pour info je ne mets rien dans from on est bien d'accord.
donc j'ai 2 lignes avec les 2 emballages differents et moi je veux l'un ou l'autre c.a.d soit le PAAPRIORITY si il existe et sinon le PAADEFAULT, mais je veux qu'une seule ligne par article pas de doublon.
je ne sais pas si c'est clair mon explication, pour info je ne mets rien dans from on est bien d'accord.
SELECT STOCOMMENT as Commentaire,
article.ARTNOARTICLE as Code,
article.ARTSORT as Genre, case when artvariety<>'' then artspecies||' '||artvariety else artspecies end as Espece_Variete,
stocriteria1.pardesignation as Etat_lot,
artcriteria1.pardesignation as Diam_pot,
artpresentation.pardesignation as Litrage,
artcriteria3.pardesignation as Presentation,
artcriteria2.pardesignation as Presentation,
unvdesignation as Taille,
artcriteria4.pardesignation as Diam_tete,
artcriteria9.pardesignation as HT_total,
DEPOT.PARDESIGNATION as Site,
EMPLACEMENT.EMPDESIGNATION as Parcelle_lot,
stocriteria2.pardesignation as Marquage,
paaprivilegedpackage as Condition,
packaging.pacdesignation as Condition,
paaquantity as Qte_cond,
paaqtyprivilegedpackage as Nb_cond,
paaquantity*paaqtyprivilegedpackage as Qte_Roll,
paaqtyprivilegedpackage2 as Nb_plt_cam,
paaqtyprivilegedpackage3 as Metrage_cam,
paaquantity*paaqtyprivilegedpackage*paaqtyprivilegedpackage2*paaqtyprivilegedpackage3 as Qte_plt_cam,
article.ARTCRITERIA19 as Code_tri,
article.ARTCRITERIA19 as Code_tri,
artcriteria19.pardesignation as tri,
artcriteria8 as Initial_fourn,
article.ARTPRICEREFMARGIN as Tarif_PR,
trfcostvalue as Tarif_Palmacea,
artcriteria12.pardesignation as Notre_Selection,
STOBEGINDATEAVAILABLE,
STOADJUSTQTY,
STOQTYRESERVORDER,
Stostockdispo,
Stostockphysique,
ARTQTEN1 as Qte_N1,
ARTQTEN as Qte_N,
PAAPRIORITY,
PAADEFAULT,
IIF(PAAPRIORITY=1,1,PAADEFAULT)
FROM article article
left outer join PACKAGEARTICLE on paanoarticle=artnoarticle
left outer join artcost on trfnoarticle=artnoarticle
left outer join supplier on cusnocustomer=artmainsupplier
left outer join artpresentation on artpresentation.parcodeparam=article.artpresentation
left outer join unitevente on unvcode=artsize
left outer join artfamily on artfamily.parcodeparam=article.artfamilycode
left outer join artcriteria5 on artcriteria5.parcodeparam=article.artcriteria5
left outer join artcriteria1 on artcriteria1.parcodeparam=article.artcriteria1
left outer join artcriteria2 on artcriteria2.parcodeparam=article.artcriteria2
left outer join artcriteria3 on artcriteria3.parcodeparam=article.artcriteria3
left outer join artcriteria9 on artcriteria9.parcodeparam=article.artcriteria9
left outer join artcriteria4 on artcriteria4.parcodeparam=article.artcriteria4
left outer join artcriteria10 on artcriteria10.parcodeparam=article.artcriteria10
left outer join artcriteria11 on artcriteria11.parcodeparam=article.artcriteria11
left outer join artcriteria6 on artcriteria6.parcodeparam=article.artcriteria6
left outer join artcriteria7 on artcriteria7.parcodeparam=article.artcriteria7
left outer join artcriteria12 on artcriteria12.parcodeparam=article.artcriteria12
left outer join artcriteria13 on artcriteria13.parcodeparam=article.artcriteria13
left outer join artcriteria19 on artcriteria19.parcodeparam=article.artcriteria19
left outer join artcriteria8 on artcriteria8.parcodeparam=article.artcriteria8
Left outer join packaging on packaging.paccodepackaging=packagearticle.paaprivilegedpackage
inner join LOTSTOCK on STONOARTICLE=ARTNOARTICLE
Left outer join EMPLACEMENT on EMPLACEMENT. EMPCODE=STOLOCATEMPLACEMENT
left outer join STOCRITERIA1 on STOCRITERIA1.parcodeparam=LOTSTOCK.STOCRITERIA1
left outer join STOCRITERIA2 on STOCRITERIA2.parcodeparam=LOTSTOCK.STOCRITERIA2
Left outer join DEPOT on DEPOT.PARCODEPARAM=LOTSTOCK.STODEPOT
where artnoarticle<>'9995'
and stooutofdate<>1
and STODEPOT <>'ZZZ'
and trfnocostident=3
and ARTMAINSUPPLIER=6
article.ARTNOARTICLE as Code,
article.ARTSORT as Genre, case when artvariety<>'' then artspecies||' '||artvariety else artspecies end as Espece_Variete,
stocriteria1.pardesignation as Etat_lot,
artcriteria1.pardesignation as Diam_pot,
artpresentation.pardesignation as Litrage,
artcriteria3.pardesignation as Presentation,
artcriteria2.pardesignation as Presentation,
unvdesignation as Taille,
artcriteria4.pardesignation as Diam_tete,
artcriteria9.pardesignation as HT_total,
DEPOT.PARDESIGNATION as Site,
EMPLACEMENT.EMPDESIGNATION as Parcelle_lot,
stocriteria2.pardesignation as Marquage,
paaprivilegedpackage as Condition,
packaging.pacdesignation as Condition,
paaquantity as Qte_cond,
paaqtyprivilegedpackage as Nb_cond,
paaquantity*paaqtyprivilegedpackage as Qte_Roll,
paaqtyprivilegedpackage2 as Nb_plt_cam,
paaqtyprivilegedpackage3 as Metrage_cam,
paaquantity*paaqtyprivilegedpackage*paaqtyprivilegedpackage2*paaqtyprivilegedpackage3 as Qte_plt_cam,
article.ARTCRITERIA19 as Code_tri,
article.ARTCRITERIA19 as Code_tri,
artcriteria19.pardesignation as tri,
artcriteria8 as Initial_fourn,
article.ARTPRICEREFMARGIN as Tarif_PR,
trfcostvalue as Tarif_Palmacea,
artcriteria12.pardesignation as Notre_Selection,
STOBEGINDATEAVAILABLE,
STOADJUSTQTY,
STOQTYRESERVORDER,
Stostockdispo,
Stostockphysique,
ARTQTEN1 as Qte_N1,
ARTQTEN as Qte_N,
PAAPRIORITY,
PAADEFAULT,
IIF(PAAPRIORITY=1,1,PAADEFAULT)
FROM article article
left outer join PACKAGEARTICLE on paanoarticle=artnoarticle
left outer join artcost on trfnoarticle=artnoarticle
left outer join supplier on cusnocustomer=artmainsupplier
left outer join artpresentation on artpresentation.parcodeparam=article.artpresentation
left outer join unitevente on unvcode=artsize
left outer join artfamily on artfamily.parcodeparam=article.artfamilycode
left outer join artcriteria5 on artcriteria5.parcodeparam=article.artcriteria5
left outer join artcriteria1 on artcriteria1.parcodeparam=article.artcriteria1
left outer join artcriteria2 on artcriteria2.parcodeparam=article.artcriteria2
left outer join artcriteria3 on artcriteria3.parcodeparam=article.artcriteria3
left outer join artcriteria9 on artcriteria9.parcodeparam=article.artcriteria9
left outer join artcriteria4 on artcriteria4.parcodeparam=article.artcriteria4
left outer join artcriteria10 on artcriteria10.parcodeparam=article.artcriteria10
left outer join artcriteria11 on artcriteria11.parcodeparam=article.artcriteria11
left outer join artcriteria6 on artcriteria6.parcodeparam=article.artcriteria6
left outer join artcriteria7 on artcriteria7.parcodeparam=article.artcriteria7
left outer join artcriteria12 on artcriteria12.parcodeparam=article.artcriteria12
left outer join artcriteria13 on artcriteria13.parcodeparam=article.artcriteria13
left outer join artcriteria19 on artcriteria19.parcodeparam=article.artcriteria19
left outer join artcriteria8 on artcriteria8.parcodeparam=article.artcriteria8
Left outer join packaging on packaging.paccodepackaging=packagearticle.paaprivilegedpackage
inner join LOTSTOCK on STONOARTICLE=ARTNOARTICLE
Left outer join EMPLACEMENT on EMPLACEMENT. EMPCODE=STOLOCATEMPLACEMENT
left outer join STOCRITERIA1 on STOCRITERIA1.parcodeparam=LOTSTOCK.STOCRITERIA1
left outer join STOCRITERIA2 on STOCRITERIA2.parcodeparam=LOTSTOCK.STOCRITERIA2
Left outer join DEPOT on DEPOT.PARCODEPARAM=LOTSTOCK.STODEPOT
where artnoarticle<>'9995'
and stooutofdate<>1
and STODEPOT <>'ZZZ'
and trfnocostident=3
and ARTMAINSUPPLIER=6