Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
See why IDC MarketScape names Qlik a 2025 Leader! Read more
cancel
Showing results for 
Search instead for 
Did you mean: 
scribidouille
Contributor III
Contributor III

Filtre sur une expression

Bonjour à tous,

 

Je suis en train de développer une feuille Qlik avec un tableau qui contient 2 dimensions : ADS et Description et une mesure CTP.

 

J'ai créé une dimension à partir d'une expression  (type ADS): 

=if(not isnull([ADS]),
'Automatique',
if(wildmatch([Description],'*ADS*') and not wildmatch([Description],'*ADSL*'),
    'Saisie Manuelle',
        'Pas ADS'))
 
çà marche bien dans mon tableau.
 
Je voudrais un volet de filtre ou un simplefieldselect (Qlik Check), qui permettrait à mon utilisateur de sélectionner 1, 2 ou les 3 valeurs.
Mais çà ne fonctionne pas.
 
Quand je sélectionne pas d'ADS quand je sélectionne "Saisie Manuelle" j'ai des automatique, pour ces cas là, j'ai une valeur dans ADS et le descriptif qui contient 'ADS', mais je pensais que c'était comme Excel, le 1er if, primant sur le 2nd.
 
Je n'ai pas les droit de script de chargement, donc je ne peux pas créer un dimension principale. Comment faire ? J'ai pensé à des variables input, mais celà m'empêche un choix multiple.
 
 
Labels (1)
4 Replies
Qrishna
Master
Master

can you please provide some sample data? and expected output? Thnx

scribidouille
Contributor III
Contributor III
Author

Bien sûr,

Ci-dessous, une copie écran de ma feuille d'un échantillon. 

 

Les règles sont :

Si ADS intranet est non nul alors 'Automatique'

Sinon si (Description Evt Terr contient 'ADS' mais pas 'ADSL') alors 'Saisie Manuelle'

Sinon 'Pas ADS'

scribidouille_1-1748334387447.png

ci -dessous l'expression de la colonne Type ADS dans la straight table :

=if(Not IsNull([Id Intranet ADS]),
'Automatique',
    if(wildmatch([Description Evt Terr],'*ADS*') and not WildMatch([Description Evt Terr],'*ADSL*'),
    'Saisie manuelle',
        'Pas ADS'))
 
Dans le table, pas de souci, l'ordre des conditions est bien respectée.
Mais je voudrais pouvoir filtrer mon tableau par type ADS. avec l'extension simplefieldselection en y appliquant la même expression.
 
Quand je clique sur 'Automatique', il m'affiche bien uniquement les lignes avec ADS intranet non nul.
Mais quand je clique sur 'Saisie Manuelle', Qlik m'affiche toutes les lignes qui ont ADs et pas ADSL y compris celle qui ont ADS intranet non nul.
C'est comme si Qlik ne lisait que la 2nd condition sans tenir compte de la 1ère condition.

 

Idem quand je filtre 'Pas ADS', Qlik affiche les lignes qui ne contiennent pas ADS mais on trouve des lignes avec ADS intranet non nul.

scribidouille_2-1748335183028.png

 

scribidouille_3-1748335237549.png

 

Je reprécise que je n'ai pas les droits sur le script de chargement et le droit de créer des dimensions principales. 

Qrishna
Master
Master

i see what you want but i dont have the data to test. provide data please as i cannot create some random data. please create some mockup data and expected output. you can put it in excel and upload here. thnx

scribidouille
Contributor III
Contributor III
Author

Ci joint un jeu de données, j'ai simplifié pour n'avoir que les 2 dimensions utilisées dans les conditions et le résultat de l'expression