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 :

Rechargement données - scripts plantent - fichiers xlsx, qvd, etc. manquant : données pas dans le qvw


Sujet :

QlikView

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 15
    Points : 5
    Points
    5
    Par défaut Rechargement données - scripts plantent - fichiers xlsx, qvd, etc. manquant : données pas dans le qvw
    je me pose une question très simple.
    j'utilise les applications exemples de qliktech
    mais quand je recharge les données, les scripts plantent.
    il me manque visiblement des fichiers : xlsx, qvd, etc

    pourquoi pas, je ne les ai pas sur mon disque...

    mais alors, pourquoi, si je ne charge pas les scripts,
    j'ai les données exemple !!!!!

    ça signifie que les données sont dans le qvw ???
    c'est ça que je ne comprends pas.

  2. #2
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2008
    Messages
    940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 940
    Points : 1 409
    Points
    1 409
    Par défaut
    Exact. Les fichiers qvw contiennent non seulement les objets de qlikview (script, feuilles, graphiques, etc...) mais aussi les données chargées.

    On peut donc ouvrir un fichier qvw et exécuter le script sur son portable connecté au bureau pour charger les données, puis emmener son portable en clientèle et utiliser qlikview la-bas sans problème ( mais sans recharger le script bien sûr ! )

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 15
    Points : 5
    Points
    5
    Par défaut
    Citation Envoyé par FORMULARY Voir le message
    Exact. Les fichiers qvw contiennent non seulement les objets de qlikview (script, feuilles, graphiques, etc...) mais aussi les données chargées.

    On peut donc ouvrir un fichier qvw et exécuter le script sur son portable connecté au bureau pour charger les données, puis emmener son portable en clientèle et utiliser qlikview la-bas sans problème ( mais sans recharger le script bien sûr ! )
    OK, je crois avoir compris.
    Est ce qu'on peux dire que à chaque fois qu'on recharge le script,
    les données remontent dans le qvw,
    sachant que :
    - soit on tape dans des bases hétérogènes sans créer de qvd,
    ce qui peux être assez lent.
    - soit on tape une 1ère fois dans des bases hétérogènes mais
    on crée un qvd ce qui optimise les accès pour les chargements +2,+3...

    c'est bien cela ?

  4. #4
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2008
    Messages
    940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 940
    Points : 1 409
    Points
    1 409
    Par défaut
    C'est bien cela.
    Le rechargement du script va récupérer les données (d'un fichier excel, d'une base ODBC, d'un fichier QVD, etc...) et les données seront alors disponibles dans le fichier qvw pour être utilisées dans ses graphiques.

    Si on ouvre un qvw sans recharger le script, on aura les données qui ont été chargées lors du dernier rechargement de script.

  5. #5
    Modérateur

    Inscrit en
    Octobre 2006
    Messages
    1 649
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 649
    Points : 2 529
    Points
    2 529
    Billets dans le blog
    6
    Par défaut
    Les données stockées dans le fichier QVW sont au format associatif et vectoriel de QlikView, ce qui permet de prendre beaucoup moins de place que des données stockées en base.

    Le chargement d'un fichier de 50 Mo pourrait alors ne prendre que 5 Mo dans QVW.

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 15
    Points : 5
    Points
    5
    Par défaut
    Citation Envoyé par PhunkyBob Voir le message
    Les données stockées dans le fichier QVW sont au format associatif et vectoriel de QlikView, ce qui permet de prendre beaucoup moins de place que des données stockées en base.

    Le chargement d'un fichier de 50 Mo pourrait alors ne prendre que 5 Mo dans QVW.
    pour terminer, est-ce qu'on peux donc en conclure que les
    données sont agencées de la même façon dans le QVW
    et le QVD, si celui-ci existe ?
    (càd base vectorielle)
    et que par conséquent, il y a un fort intérêt à créer un QVD
    car les temps d'accès pour le prochain rechargement seront beaucoup
    plus intéressants ?

  7. #7
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2008
    Messages
    940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 940
    Points : 1 409
    Points
    1 409
    Par défaut
    Les données sont agencées de la même manière dans les fichiers QVD et QVW.
    Par contre, un QVD ne contient qu'une seule table.

    L'intérêt d'un fichier QVD intermédiaire dépend de l'usage que l'on peut faire de la table contenue dans le QVD. Par exemple :
    - Si les données sont longues à charger et qu'ensuite plusieurs qvw les utilisent.
    - Si les données sont à récupérer à une certaine date (fin de mois par exemple).
    Comme ça, si un utilisateur recharge son qvw, il conserve les mêmes données.
    - Si les données ne varient plus (plan comptable par exemple) on peut éviter une connexion ODBC qui prendrait du temps en rechargeant à partir d'un QVD.
    La liste n'est bien sûre pas exhaustive ...

  8. #8
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 15
    Points : 5
    Points
    5
    Par défaut
    Citation Envoyé par FORMULARY Voir le message
    Les données sont agencées de la même manière dans les fichiers QVD et QVW.
    Par contre, un QVD ne contient qu'une seule table.

    L'intérêt d'un fichier QVD intermédiaire dépend de l'usage que l'on peut faire de la table contenue dans le QVD. Par exemple :
    - Si les données sont longues à charger et qu'ensuite plusieurs qvw les utilisent.
    - Si les données sont à récupérer à une certaine date (fin de mois par exemple).
    Comme ça, si un utilisateur recharge son qvw, il conserve les mêmes données.
    - Si les données ne varient plus (plan comptable par exemple) on peut éviter une connexion ODBC qui prendrait du temps en rechargeant à partir d'un QVD.
    La liste n'est bien sûre pas exhaustive ...

    d'accord,
    mais alors, si je charge tout à partir d'un QVD, est ce que cela signifie
    que je ne verrai plus qu'une table dans le visionneur de tables
    de Qlikview ?
    ou est-ce que tu veux signifier que je verrai tout autant de tables
    dans le visionneur, mais avec un agencement en coulisse d'une
    seule table fait par Qlikview ?

    c'est ce que j'essaie de comprendre.

    pour moi c'est essentiel d'assimiler cette notion.

  9. #9
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2008
    Messages
    940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 940
    Points : 1 409
    Points
    1 409
    Par défaut
    Un fichier QVD ne contient qu'une seule table et rien d'autre.
    Celle-ci peut bien sûr provenir de plusieurs tables ODBC jointes par exemple.

    Un fichier QVW contient les graphiques et autres objets de QV ainsi que les tables chargées par son script.
    Le script du QVW peut bien sûr lire plusieurs tables issues de différents fichiers QVD ainsi que d'autres (Excel, ODBC, texte, etc...) simultanément.

    Le visionneur de tables fait partie de QV et affiche les tables chargées en mémoire. Tu verras les tables de ton QVW de la même manière, qu'elles proviennent d'un QVD ou d'un lien ODBC ou autre.

  10. #10
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 15
    Points : 5
    Points
    5
    Par défaut
    Citation Envoyé par FORMULARY Voir le message
    Un fichier QVD ne contient qu'une seule table et rien d'autre.
    Celle-ci peut bien sûr provenir de plusieurs tables ODBC jointes par exemple.

    Un fichier QVW contient les graphiques et autres objets de QV ainsi que les tables chargées par son script.
    Le script du QVW peut bien sûr lire plusieurs tables issues de différents fichiers QVD ainsi que d'autres (Excel, ODBC, texte, etc...) simultanément.

    Le visionneur de tables fait partie de QV et affiche les tables chargées en mémoire. Tu verras les tables de ton QVW de la même manière, qu'elles proviennent d'un QVD ou d'un lien ODBC ou autre.
    En fait, je pense que je ne m'exprime pas correctement (ou clairement)

    Imaginons que je charge dans mon script trois tables liées
    par une clé d'une base Oracle, d'un Sybase, et un fichier Excel.
    Si je les charge directement dans Qlikview, je verrai trois tables
    dans le visionneur : ok.

    Maintenant, imaginons que je charge ces mêmes infos dans un QVD.
    Il va me créer une base vectorielle, c'est bien cela ?
    Puis, je crée une appli qlikview qui tape sur le QVD.
    on est d'accord, j'aurai bien exactement les mêmes infos...
    J'aurai donc une seule table dans le QVD, mais que vais-je voir
    dans le visionneur ?
    la grosse table qlikview ? les trois tables de départ ?

    je suis désolé mais je n'arrive pas à décoller sur ce point.

  11. #11
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2008
    Messages
    940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 940
    Points : 1 409
    Points
    1 409
    Par défaut
    Non. Un QVD ne peut contenir qu'une seule table.
    Dans ton exemple, il faudrait un premier qvw dont le script chargerait une table oracle, l'écrirait dans un QVD, chargerait une seconde table, l'écrirait dans un autre QVD, chargerait la troisième table oracle, l'écrirait dans un troisième QVD, chargerait la table sybase, l'écrirait dans un quatrième QVD et enfin chargerait le fichier pour l'écrire dans un cinquième QVD.

    Ensuite, un autre qvw, contenant les graphiques, aurait un script qui chargerait les 5 tables à partir des 5 QVD.
    Exemple : Script du premier QVW :
    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
    SQL Connect ...
    T1:
    LOAD z1,z2,z3;
    SQL SELECT z1,z2,z3 from ...;
    Store T1 into c:\qvdt1.qvd (QVD);
    Drop table T1;
    T2:
    LOAD x1 as z1,x2,x3;
    SQL SELECT x1,x2,x3 from ...;
    Store T2 into c:\qvdt2.qvd (QVD);
    Drop table T2;
    T3:
    LOAD y1 as z1,y2,y3;
    SQL SELECT y1,y2,y3 from ...;
    Store T3 into c:\qvdt3.qvd (QVD);
    Drop table T3;
    T4:
    LOAD b1 as z1,b2,b3;
    SQL SELECT b1,b2,b3 from ...;
    Store T4 into c:\qvdt4.qvd (QVD);
    Drop table T4;
    T5:
    LOAD e1,e2 from fichier.xlsx (ooxml, embedded labels, table is Feuille1);
    Store T5 into c:\qvdt5.qvd (QVD);
    Dropt table T5;
    A partir de là, on a nos données chargées dans 5 fichiers QVD (1 par table)
    Le fichier QVW contenant les graphiques aurait comme script :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Table1: Load * from c:\qvdt1.qvd (QVD);
    Table2: Load * from c:\qvdt2.qvd (QVD) where x2=x3;
    Table3: Load e1,e2 from c:\qvdt5.qvd (QVD);
    Je vois surtout 4 avantages aux QVD :
    1) On peut avoir le premier qvw sur un PC administration qui va chercher les données sur le serveur oracle. Les utilisateurs finaux peuvent ne pas y avoir accès. Si plusieurs QVW chargent les données elles seront les mêmes (la table des factures clients sur oracle peut quant à elle évoluer toutes les 30 secondes ).
    2) On ne se connecte qu'une fois au serveur oracle lorsqu'on a besoin de réactualiser les données, via le script du premier qvw.
    3) Les tables dans les QVD sont vectorielles. Elles prennent moins de place et leur lecture est plus rapide.
    4) Plusieurs fichiers QVW peuvent charger les mêmes données à partir des QVD, sans avoir besoin de se connecter au serveur oracle.

    J'espère avoir répondu à ta question

  12. #12
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 15
    Points : 5
    Points
    5
    Par défaut
    bon, c'est beaucoup plus clair.

    Mais alors, pour résumer, si j'ai une appli qlikview
    qui tape sur une grosse table connectée Oracle
    ainsi qu'une grosse table sous format QVD (càd base vectorielle)

    est ce que je peux considérer que l'application Qlikview
    est en full vectoriel ou n'agence les données en vectoriel
    que pour les données issues du QVD ?

    Vous voyez ce que je veux dire ?
    le fait de taper directement sur la table Oracle va prendre beaucoup
    de temps, certes, mais est ce que ce temps onéreux consiste aussi
    à réagencer les données de la table Oracle en vectoriel dans le qvw ?
    (en plus du qvd, pour lequel elle le fait, on le sait déjà..)

  13. #13
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2008
    Messages
    940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 940
    Points : 1 409
    Points
    1 409
    Par défaut
    Les données du QVW sont aussi en vectoriel.

    Cependant, je ne pense pas que le temps mis à écrire les données en vectoriel lorsque la source est une base oracle (ou nimporte quelle autre source ODBC) soit très important. Le temps de lecture de ta base oracle vient surtout du lien ODBC lui-même (vitesse de connexion, rapidité du serveur interrogé, etc ...)

    La lecture d'un QVD est plus rapide car une base vectorielle est plus légère qu'une base oracle, et si le fichier est en local sur ton PC, il n'y a plus de problème de vitesse de connexion ...

  14. #14
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 15
    Points : 5
    Points
    5
    Par défaut
    Citation Envoyé par FORMULARY Voir le message
    Les données du QVW sont aussi en vectoriel.

    Cependant, je ne pense pas que le temps mis à écrire les données en vectoriel lorsque la source est une base oracle (ou nimporte quelle autre source ODBC) soit très important. Le temps de lecture de ta base oracle vient surtout du lien ODBC lui-même (vitesse de connexion, rapidité du serveur interrogé, etc ...)

    La lecture d'un QVD est plus rapide car une base vectorielle est plus légère qu'une base oracle, et si le fichier est en local sur ton PC, il n'y a plus de problème de vitesse de connexion ...
    d'accord,
    mais est ce que je peux quand même considérer que,
    en dehors du temps de connexion odbc à la base Oracle,
    il va y avoir aussi un temps utilisé pour transformer les données
    relationnelles en vectoriel dans le QVW.

    si j'ai bien compris :
    - le LOAD lit le QVD --> pas de transformation en vectoriel
    car c'est déjà fait
    - le LOAD lie une table Oracle --> temps de transformation
    en vectoriel pour stockage dans le QVW

    je crois que c'est cela non ?

Discussions similaires

  1. Réponses: 6
    Dernier message: 11/02/2015, 15h54
  2. Réponses: 11
    Dernier message: 18/07/2012, 10h27
  3. Réponses: 4
    Dernier message: 02/04/2012, 16h12
  4. Réponses: 4
    Dernier message: 12/10/2006, 17h48
  5. Réponses: 2
    Dernier message: 28/08/2006, 15h00

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