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 :

Expression dans le script de chargement


Sujet :

QlikView

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Octobre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tchèque Rep.

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Octobre 2014
    Messages : 73
    Points : 46
    Points
    46
    Par défaut Expression dans le script de chargement
    Bonjour,

    J'ai 2 tables :

    1) Commande (130 000 lignes)
    2) Réception(40 000 lignes)

    Dans mon cas, il est possible qu'une commande soit receptionnée en de multiples colis en de multiples dates

    Le match entre les deux tables est le "numéro de la commande".

    Dans la 1ère tables j'ai une date de commande et dans la 2ème tables j'ai une date de reception.

    Ce que je cherche à faire, c'est des statistique entre le moment ou je passe/créer la commande et la date ou je receptionne la marchandise.

    Du coup, mes tables chargées, j'a fait un tableau avec la dimension des "colis" de la table reception dont l'expression est simplement la date de reception - la date de la commande, ce qui me donne le nombre de jour entre la commande et la réception.

    Jusque la c'est bien CA marche.

    Je cherche à faire en sorte que ce nombre de jour soit directement créer dans le script de chargement, mais je ne sais pas comment m'y prendre...

    QQN aurait'il une piste à me suggérer.

    merci

  2. #2
    Modérateur

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

    Vous dites
    1) Commande (130 000 lignes)
    2) Réception(40 000 lignes)

    Dans mon cas, il est possible qu'une commande soit receptionnée en de multiples colis en de multiples dates
    Mais est-ce qu'une réception peut concerner plusieurs commandes ?
    (si ce n'est pas le cas, j'ai du mal à comprendre pourquoi il y a plus de commandes que de réception)


    S'il y a bien une relation "1 -> n", ce que vous pouvez faire, c'est de au lieu de faire 2 tables (commandes, réception), faire 1 seule table temporaire qui contient la jointure des 2, puis charger la table définitive depuis cette table temporaire, en rajoutant un champ "date fin - date début".


    Vous pouvez aussi conserver votre modèle en 2 tables, et rajouter une 3em table qui contiendra :
    - l'identifiant (qui servira de lien)
    - la date de début (non liée)
    - la date de fin (non liée)
    - le temps entre les 2

  3. #3
    Membre du Club
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Octobre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tchèque Rep.

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Octobre 2014
    Messages : 73
    Points : 46
    Points
    46
    Par défaut
    Alors les 130 000 lignes sont en fait les lignes (articles par commande)

    -Il y en as probablement bcp plus, car je crois qu'une partie des réceptions est archivée
    -Également, les commandes sont rarement livrés de manière complète et à la même date d’où une différence

    Et oui une réception concerne une commande uniquement.

    J'ai essayé la solution qui ferait une troisième table, mais comment au niveau de la syntaxe du script je peux le faire une table à partir de 2 différentes ?

  4. #4
    Modérateur

    Inscrit en
    Octobre 2006
    Messages
    1 651
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 651
    Points : 2 531
    Points
    2 531
    Billets dans le blog
    6
    Par défaut
    Quelque chose du genre
    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
    NouvelleTable_TMP:
    LOAD 
    id, // servira de lien
    date_livraison AS NouvelleTable.date_livraison
    RESIDENT Livraisons;
     
    JOIN (NouvelleTable_TMP)
    LOAD 
    id, // servira de lien
    date_commande AS NouvelleTable.date_commande
    RESIDENT Commandes;
     
    NouvelleTable:
    LOAD 
    *,
    NouvelleTable.date_livraison - NouvelleTable.date_commande AS Durée
    RESIDENT NouvelleTable_TMP;
     
    DROP TABLE NouvelleTable_TMP;

  5. #5
    Membre du Club
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Octobre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tchèque Rep.

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Octobre 2014
    Messages : 73
    Points : 46
    Points
    46
    Par défaut
    Ça à l'air de fonctionner

    Merci

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

Discussions similaires

  1. Script de chargement de base dans QLIKVIEW
    Par Chaviro dans le forum QlikView
    Réponses: 5
    Dernier message: 29/01/2015, 15h28
  2. Réponses: 2
    Dernier message: 17/06/2013, 10h18
  3. Filtre dans le script de chargement
    Par StephBe dans le forum QlikView
    Réponses: 1
    Dernier message: 12/11/2012, 09h26
  4. Calcul dans le script de chargement
    Par meumeu73.1 dans le forum QlikView
    Réponses: 1
    Dernier message: 09/02/2011, 14h36
  5. [RegEx] Expression régulières : Balises <SCRIPT>
    Par Gwipi dans le forum Langage
    Réponses: 2
    Dernier message: 25/04/2006, 00h25

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