IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

QlikView Discussion :

Problème If then else dans script


Sujet :

QlikView

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 58
    Points : 34
    Points
    34
    Par défaut Problème If then else dans script
    Bonjour,

    J'essaye de faire une boucle de chargement integrant un test dans le script.

    Le 1er "if" est en rouge et tous les textes sont soulignés après lui.

    J'ai l'impression qu'il ne comprend pas la variable compteur "i".
    J'ai déclaré ma variable i avec l'instruction LET

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
     
    LET i=10;
     
    ...
     
    	for i=10 to 13
    		Directory;
    		Concatenate LOAD
    		Timestamp(Floor([YYYY-MM-DD])+Frac([HH:MM:SS]), 'DD/MM/YYYY hh:mm:ss') as [DateNiv],
    		[YYYY-MM-DD] as [Date2Niv],
    		if(hour([HH:MM:SS])<12,'AM','PM') as [Periode],
    		year([YYYY-MM-DD]) as [Annee],
        	month([YYYY-MM-DD]) as [Mois],
        	day([YYYY-MM-DD]) as [Jour],    	
           	if i=10 then
         		[Htr01] as [Niveau];
        		'T1' as [Capteur];
        	elseif i=11 then
        		[Htr02] as [Niveau];
        		'T2' as [Capteur];
    	elseif i=12 then
        		[Htr03] as [Niveau];
        		'T3' as [Capteur];
        	else i=13
        		[Htr04] as [Niveau];
        		'T4' as [Capteur];
        	end if	
    		FROM
    	[Qlikview Data Sources\Niv\aa.txt]
    	(txt, codepage is 1252, embedded labels, delimiter is ';', msq);
    	next i
    Avez vous une idée ?

  2. #2
    Modérateur

    Inscrit en
    Octobre 2006
    Messages
    1 649
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 649
    Points : 2 531
    Points
    2 531
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    "if ... then", c'est pour séparer des blocs de scripts, pas pour faire des tests dans une expression de chargement.

    Pour faire un test dans une expression de chargement, c'est la fonction "if" qu'il faut utiliser :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    if($(i)=10,
    [Htr01],
    if($(i)=11,
    [Htr02],
    ...
    )
    ) as [Niveau];

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 58
    Points : 34
    Points
    34
    Par défaut
    Bonjour PhunkyBob

    Ca fonctionne... mais pourquoi y a t'il deux syntaxes différentes ???

    Merci

  4. #4
    Modérateur

    Inscrit en
    Octobre 2006
    Messages
    1 649
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 649
    Points : 2 531
    Points
    2 531
    Billets dans le blog
    6
    Par défaut
    Il y a des fonctions "script" et des fonctions "requêtes".
    Comme en PL SQL / SQL.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 09/06/2012, 22h40
  2. condition if then else dans un select
    Par bringer dans le forum SQLite
    Réponses: 5
    Dernier message: 11/07/2009, 01h25
  3. IF THEN ELSE dans 1 requête
    Par patjaff dans le forum Requêtes
    Réponses: 4
    Dernier message: 28/10/2008, 17h43
  4. if then else dans un select
    Par Fiona08 dans le forum SQL
    Réponses: 8
    Dernier message: 12/08/2008, 16h14
  5. fonction if/then/else dans une requete Access
    Par steve38 dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 24/12/2006, 18h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo