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 :

[QlikView] Calcul cumul au chargement des données


Sujet :

QlikView

  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2003
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 40
    Points : 20
    Points
    20
    Par défaut [QlikView] Calcul cumul au chargement des données
    Bonjour,

    Je reviens à la charge avec un nouveau problème qui me brule les neurones :

    J'essaye de pré-calculer les données au chargement, afin d'avoir juste à afficher ces données par la suite dans un tableau simple.
    Cela fonctionne lorsque je fais des COUNT par mois, mais je n'arrive pas à faire un COUNT du cumul des mois précédents + mois en cours

    Script de chargement :


    tableDA:
    LOAD
    DA_Organisation,
    DA_NumeroDA,
    FKEY_NumeroDA,
    DA_TypeSolution,
    DA_SousCategorie,
    Year([DA_DateOuverture]) & '-' & Month([DA_DateOuverture]) as DA_YearMonth,
    Year([DA_DateOuverture]) & '-' & Month([DA_DateOuverture]) as JOIN_YearMonth
    FROM \\s3i600\QlikView\DA.qvd (qvd)
    WHERE LEFT(DA_TypeSolution,4) = '123' AND (DA_Organisation = 'XYZ' OR DA_Organisation = 'ABC');

    //------------------------------------
    tableACT:
    LOAD
    ACT_Organisation,
    ACT_NumeroActivite,
    FKEY_NumeroDA,
    ACT_Type,
    ACT_Motif,
    ACT_DateDebutReel,
    Year([ACT_DateDebutReel]) & '-' & Month([ACT_DateDebutReel]) as ACT_YearMonth,
    Year([ACT_DateDebutReel]) & '-' & Month([ACT_DateDebutReel]) as JOIN_YearMonth
    FROM \\s3i600\QlikView\Activites.qvd (qvd)
    WHERE ACT_Type = 'Appel entrant';

    //------------------------------------
    tableCLIENT:
    LOAD
    CLI_NumeroContrat,
    CLI_DateActivationRedbox,
    Year([CLI_DateActivation]) & '-' & Month([CLI_DateActivation]) as CLI_YearMonth,
    Year([CLI_DateActivation]) & '-' & Month([CLI_DateActivation]) as JOIN_YearMonth
    FROM \\s3i600\QlikView\Clients.qvd (qvd)
    WHERE CLI_Etat = 'A';

    //------------------------------------
    RecapDA:
    LOAD
    count (DA_NumeroDA) as [Nombre de DA],
    JOIN_YearMonth
    RESIDENT tableDA
    GROUP BY JOIN_YearMonth;

    //------------------------------------
    RecapACT:
    LOAD
    count (ACT_NumeroActivite) as [Nombre d'appels],
    JOIN_YearMonth
    RESIDENT tableACT
    GROUP BY JOIN_YearMonth;

    //------------------------------------
    RecapCLIENT:
    LOAD
    count (CLI_NumeroContrat) as [Nombre de clients],
    JOIN_YearMonth
    RESIDENT tableCLIENT
    GROUP BY JOIN_YearMonth;
    JOIN_YearMonth me sert de clé entre les différentes données

    J'arrive donc à avoir le nombre de DA, appels et clients par mois, SAUF qu'en ce qui concerne les clients je souhaiterai avoir le cumul.

    D'avance merci à ceux qui s'aventureraient à m'aider.

    MC

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2008
    Messages : 2
    Points : 3
    Points
    3
    Par défaut
    Salut, je suis nouveau sur ce forum, et je m'intéresse beaucoup à QlikView.

    Pour ta question: as-tu essayé de passer par des variables avec un boucle for sur tes mois pour cumuler ton nombre de clients.

    @+

  3. #3
    Futur Membre du Club
    Inscrit en
    Juillet 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 5
    Points : 7
    Points
    7
    Par défaut Un exemple de cumul en QlikView dans un Load
    Voici un exemple :
    La clé pour cumuler des valeurs, c'est la fonction peek(), équivalente à previous() quand il n'y a qu'un argument.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    LOAD 
    Date, 
    Value, 
    Value* if( isnull(peek('CalcValue')),1,peek('CalcValue') ) as CalcValue 
    FROM MaTable 
    ORDER BY Date;
    Exemple pour le cumul d'un champ :

    Valeurs:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    LOAD * INLINE [
    CleTri, Valeur
    1, 10
    2, 20
    3, 30
    4, -40
    5, -20
    6, 50
    7, -30
    ];
    Cumuls:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    LOAD *,
    Valeur+If(IsNull(Peek( 'Cumul' )),0,Peek( 'Cumul' )) AS Cumul
    RESIDENT Valeurs
    ORDER BY CleTri;
     
    DROP TABLE Valeurs;
    Exemple de cumul un peu plus compliqué (par famille, et avec les cumuls avant et après). C'est très utile pour des mouvements de stock, car ça permet pour chaque mouvement d'avoir simplement la quantité avant mouvement, la quantité du mouvement et la quantité après mouvement.

    Valeurs :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    LOAD * INLINE [
    CleTri, Famille, Valeur
    1, 'A', 10
    2, 'B', 20
    3, 'A', 30
    4, 'B', -10
    5, 'A', -30
    6, 'A', 10
    7, 'B', 50
    ];
    Cumuls :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    LOAD *,
    If(Famille<>Previous(Famille),0,Peek( 'CumulFamilleApres' )) AS CumulFamilleAvant,
    Valeur+If(Famille<>Previous(Famille),0,Peek( 'CumulFamilleApres' )) AS CumulFamilleApres,
    Valeur+If(IsNull(Peek( 'CumulTotal' )),0,Peek( 'CumulTotal' )) AS CumulTotal
    RESIDENT Valeurs
    ORDER BY Famille, CleTri;
     
    DROP TABLE Valeurs;

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 9
    Points : 7
    Points
    7
    Par défaut [QLIKVIEW] Forum decisionnel
    Bonjour,

    Avez-vous essayé de poser votre question sur :
    http://www.forum-decisionnel.com/sit...rm-decisionnel

    Il sont pas mal actif sur le domaine Qlikview

    Bonne journée.

Discussions similaires

  1. Chargement des données sur mysql
    Par ecom_adil dans le forum SQL Procédural
    Réponses: 0
    Dernier message: 25/02/2008, 17h08
  2. chargement des données d'un datawarehouse syntaxe oracle
    Par mehdiing dans le forum Administration
    Réponses: 3
    Dernier message: 01/05/2007, 11h23
  3. Processus de chargement des données (avec talend)
    Par szoubir dans le forum Développement de jobs
    Réponses: 2
    Dernier message: 27/04/2007, 12h17
  4. Chargement des données d'une classe vers une autre
    Par nosdev dans le forum Access
    Réponses: 1
    Dernier message: 16/01/2007, 14h44
  5. Réponses: 2
    Dernier message: 20/11/2006, 14h35

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