Skip to main content
Announcements
Have questions about Qlik Connect? Join us live on April 10th, at 11 AM ET: SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Boucle pour load plusieurs bases séléctionnées

Bonjour,

J'ai une petite liste de selection qui contient les noms de mes bases de données.

Lorsque j'en selectionne une, cela assigne une variable : vBaseSelected

Et fait apparaitre un bouton Load (et un add load).

Le chargement exécute des requétes de ce type :


Request1:

LOAD ... AS ...,   ....  

          '$(vBaseSelected)' AS client 

FROM  (qvd)

WHERE ...;

Maintenant question logique d'un collégue :

"Comment je fais si je veux charger les 60 bases ?"

"Et bin tu te tapes 60 selections et 60 chargements"

Pas la bonne réponse aparemment, donc est ce qu'il est possible de bouclé sur ma variable ?

Cordialement,

Labels (1)
3 Replies
Not applicable
Author

Pour l'instant je n'ai que 10 bases dans ma liste, donc j'ai réussi en utilisant des index, mid, left right et plein de if.. Mais bon ca serait mieux dans une boucle quand meme

Not applicable
Author

Bonjour Alexandre,

il est tout à fait possible de faire des boucles :

https://help.qlik.com/sense/2.0/fr-FR/online/#../Subsystems/Hub/Content/Scripting/ScriptControlState...

https://help.qlik.com/sense/2.0/fr-FR/online/#../Subsystems/Hub/Content/Scripting/ScriptControlState...

https://help.qlik.com/sense/2.0/fr-FR/online/#../Subsystems/Hub/Content/Scripting/ScriptControlState...

Mais la question suivante sera : sur mes 10 bases, comment je sais que je sélectionne celle que je veux choisir de mettre à jour ?

Cordialement,

Xavier.

Not applicable
Author

Bonjour,

Il est possible de faire des boucles, dans ton cas cela donnerai quelque chose comme ça:

QUALIFY *;

for i = 0 to NoOfRows('ListeBase') - 1

  let vBaseSelected = peek('NomBase', $(i), 'ListeBase');

  Request_$(vBaseSelected):

  LOAD ... AS ...,   .... 

          '$(vBaseSelected)' AS client

  FROM  (qvd)

  WHERE ...;

next i

Cordialement,

Augustin