Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Set Analysis expression

Bonjour

J'ai un souci avec uen expression de SetAnalysis que je détaille ci dessous :

J'ai une requete SQL à migrer en QlikView : la  partie de la requête Sql à migrer est la suivante :

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 TRANSTYPENOT 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)

=> Expression Setanalysis que j'utilise :

if(count( {$<[Code article] = P({$<Vetat.TRANSDATE={'>=$(=Date(vMinDate2))<=$(=Date(vMaxDate2))'},

Vetat.TRANSTYPE={'INTEGRATION','AJUSINVPHY','ENRSTKRAP','TRANSFERE'} >} [Code article])>} [Code article])>0,'Mouvementé','Non Mouvementé')

if(count( {$<[Code article]-= (
p({$<Vetat.TRANSDATE={'>=$(=Date(vMinDate2))<=$(=Date(vMaxDate2))'},Vetat.TRANSTYPE-={'INTEGRATION','AJUSINVPHY','ENRSTKRAP','TRANSFERE'}>} [Code article])+
p({$<Vetat.TRANSDATE={'>$(=Date(vMaxDate2))'},Vetat.TRANSTYPE={'INTEGRATION'}, Vetat.storloc ={[location]}>} [Code article]))
>} [Code article])>0,'Mouvementé','Non Mouvementé')

=> Je pense que mon expression est KO pourtant  que dans l'editeur j'ai :  expression ok mais j'arrive à afficher les stauts de Vetat : integration et transaférée ..etc

Merci bien de me donner vos avis car je ne trouve pas de solution

Merci d'avance

Cordialement

6 Replies
Not applicable
Author

Bonjour,

Je viens de tomber sur votre demande et pareil de mon coté , j'ai le même problème ! je souhaiterais migrer une requête SQL 'not in' en QVW par le set analysis  !

Avez vous pu trouver la solution depuis ?

Je vous remercie d'avance pour votre retour !

Cordialement;

Manal

  

Not applicable
Author

Non j ai tjrs pas de retour sinon vous pouvez essayer la fonction E() ou -= P() de Setanalysis !

Not applicable
Author

Bonjour,

Je te remercie pour ton retour !

Mon problème est le suivant : On a un dossier qui peut représenter plusieurs état et on veux juste les dossiers qui ne présente à aucun moment un état précis 'H' .... Ouiae j'ai essayé avec le '-P' et le 'E' mais rien de bon !

La table est la suivante :

FACTURE et la clè est composé de ces champs  :

CODE_SERVER,

CODE_LIBRARY,

CODE_SOCIETE_TRANSIT,

CODE_ETABLISSEMENT_TRANSIT,

CODE_ACTIVITE_TRANSIT,

CODE_SECTION_TRANSIT,

CODE_SERVICE_TRANSIT,

NUMERO_DOSSIER_TRANSIT,

NUMERO_ORDRE_DECLARATION,

NUMERO_SEQUENCE_FACTURE

  Et le champ : Etat_FACTURE (dans tjrs la même table ) peux avoir plusieurs valeur ( A, B , C ,H)

et un num de dossier peut avoir plusieurs "états en même temps différencié par le num d'ordre de déclaration donc nous souhaitons exclure les num de dossier qui représente un état 'H' !

voilà donc précisément le problème !

Si tu as des pistes je suis preneuse !

Merci et bon courage .

Cordialement,

Manal

Not applicable
Author

Je pense que de préférence essayer de le modéliser dans le script de Qlikview et non dans les expressions ! à mon avis ce serai plus simple ! à voir .....

Cordialement;

Manal

martin59
Specialist II
Specialist II

Bonjour,

Je suis d'accord avec Chouma, votre problème est à modéliser dans le script pour simplifier vos formules par la suite.

Avez-vous trouvé une solution depuis la dernière fois ?

Martin

martin59
Specialist II
Specialist II

Bonne année au fait !