Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Exclusion

Bonjour, j'ai un souci que j'arrive pas à le résoudre depuis des semaines donc si j'aurai la solution je serai vraiement trééés reconnaissante : En faite j'ai mon modèle et j'essai d'afficher l'etat d'un article (mouvementé ou non mouvementé) cette information je l'ai pas dans ma base donc avec SQL la requete que j'essaie de migrer c'est la suivante :

SELECT DISTINCT

b.ITEMNUM as Code_Article,

b.location as Magasin,

:Date_Debut as Date_Debut,

:Date_Fin as Date_Fin

FROM ITEM i, INVBALANCES b , INVCOST c

WHERE b.ITEMNUM = i.ITEMNUM  and b.itemnum = c.itemnum(+) and b.LOCATION = c.location(+)

AND b.LOCATION like upper(:Magasin)

AND b.ITEMNUM LIKE upper(:Code_Article)

AND b.ITEMNUM NOT IN (select DISTINCT ITEMNUM from V_ETAT_28

WHERE ITEMNUM LIKE upper(:Code_Article)

AND (FROMSTORELOC LIKE upper(:Magasin) OR TOSTORELOC LIKE upper(:Magasin))

AND TRANSTYPE NOT IN('INTEGRATION','AJUSINVPHY','ENRSTKRAP','TRANSFERE')

AND TRANSDATE BETWEEN :Date_Debut AND :Date_Fin)

AND b.ITEMNUM NOT IN (select DISTINCT ITEMNUM from V_ETAT_28 

WHERE ITEMNUM LIKE upper(:Code_Article)

AND (FROMSTORELOC LIKE upper(:Magasin) OR TOSTORELOC LIKE upper(:Magasin))

AND TRANSTYPE = 'INTEGRATION'

AND TRANSDATE > :Date_Fin)

ORDER BY b.ITEMNUM

C'est la partie Not IN qui doit etre migré pour nous indiqué les quels sont mouvementé ou pas : j'ai essayé de mettre en place une expression de SetAnalysis avec (-=) mais j'arrive toujours pas à afficher ce que je veux et comme c'est un indicateur je peux pas filtere sur l'etat (Mouvementé ou non)

J'espère que j'etait assé claire sinon n hesiter pas à me poser des questions peut etre on trouvera la réponse ensemble

Merci

Cordialement

5 Replies
Not applicable
Author

Any idea please ...???

Not applicable
Author

Bonjour Amal,

Tu peux  remplacer NOT IN par NOT MATCH() ou MATCH()

NOT IN('INTEGRATION','AJUSINVPHY','ENRSTKRAP','TRANSFERE')

=> NOT MATCH ('INTEGRATION','AJUSINVPHY','ENRSTKRAP','TRANSFERE')

Attention, Il faut pas utiliser du code SQL pure dans QlikView mais adapter la requête.

Anonymous
Not applicable
Author

Salut Amal,

Si je comprends bien, vous êtes en train d'écrire une requête SQL dans QV.

Je vous conseillerai au cas échéant de rajouter un Load avant le code SQl et de mettre toute la couche de sélection en amont.

Je rejoins la suggestion de Judikael pour l'utilisation de Match().

Cordialement,

Antoine

EDIT: Voir http://community.qlik.com/message/396243

Not applicable
Author

En faite ce que j'essaie de faire c'est une migration du Sql pas de requete directe et mon but c'est de récuperer toute des les articles qui ne sont dans b.itemnum mais pas NOT IN V_etat comme elle montre la requete donc je pensais qu'il faut faire avec l'exclusion dans une expression de Setanalysis je vais tester avec not match()

Merci

Anonymous
Not applicable
Author

Je vous en prie. malheureusement, Set Analysis ne fonctionne pas (encore, peut être dans les versions du futur) dans le Load Script

Bien à vous,

Antoine