Wednesday 4 January 2017

Moyenne Mobile Qlikcommunity Dans Qlikview

Qlikview 8211 Expressions mobiles vers le script Load Toute personne qui a passé du temps à jouer avec un document Qlikview sait qu'il s'agit d'un outil très impressionnant. La vraie puissance de Qlikview réside dans sa capacité à vous fournir rapidement des analyses de données. Il est facile de se laisser prendre par la construction d'expressions ad hoc et de les laisser assis dans l'interface utilisateur, stimulant la vitesse de traitement et ralentissant le document lorsque vous effectuez des sélections. Cela peut éliminer la caractéristique la plus impressionnante de Qlikview. Nous avons récemment été confrontés à une tâche où un client devait calculer le montant moyen des ventes des 12 derniers jours, par produit, par district. Avec la puissance de l'analyse des ensembles, ce n'est pas une expression difficile à écrire. Il pourrait être aussi simple que: somme 40 123 lt saledate 123 gt 40 Date 40 aujourd'hui 40 41 - 12 41 41 lt 40 Date 40 aujourd'hui 40 41 41 41 125 gt 125 saleamount 41 13 Cependant, quand vous pensez qu'il y aura 30 millions Ventes dans le document, vous pouvez anticiper un graphique de chargement très lent. Bien que l'expression puisse fournir des résultats précis, la prochaine décision que vous devez prendre est, Puis-je et devrais-je déplacer ce dans le script de chargement Pourquoi rendre vos utilisateurs d'attente sur les données qui peuvent être traitées dans le script de chargement Voici les étapes que nous avons pris à Déplacer cette expression dans le script de chargement, qui a augmenté la vitesse de traitement du document près de 5 fois plus. Let8217s commencent par un tableau des enregistrements de ventes: Pour cet exemple, supposons que la tâche est de montrer, pour chaque client, la moyenne des 14 jours précédents montant des ventes. La première étape est de créer une clé sur ce domaine, de sorte que nous sommes en mesure de s'y rattacher. Puisque nous cherchons à agréger par client et date, la clé logique serait une clé concaténée de customername et de saledate. Cela peut être accompli en ajoutant la colonne suivante à la table: customername amp amp date 40 saledate. MM DD AAAA 41 comme customerdatekey La prochaine chose que nous devrons faire est de créer une table de calendrier avec les dates nécessaires pour calculer une moyenne mobile de 12 jours pour chaque enregistrement dans la table des ventes. Cela peut être accompli avec le morceau de code suivant: Crée une table temporaire avec des dates distinctes chargées à partir de la date LOAD de la vente 40 fieldvalue 40 saledate. Iterno 40 41 41 41 comme tempdate AUTOGENERATE 1 WHILE len 40 fieldvalue 40 saledate. Iterno 40 41 41 41 Créer une table avec chaque saledate dans une colonne et 14 dates précédentes dans une autre colonne RollingAverage. LOAD Différent tempdate comme tempdate. Date 40 tempdate iterno 40 41. MM JJ AAAA 41 comme linkdate RÉSIDENT RollingAveragetemp WHILE iterno 40 41 lt 14 Après l'exécution, il nous reste une table qui ressemble à ceci: Note: une date a été sélectionnée pour montrer que pour chaque saledate 612013), chacune des 14 dates précédentes lui a été liée. Puisque nous pouvons vendre au même client plus d'une fois dans une journée, nous devrons calculer la moyenne quotidienne. Cela peut être accompli avec le code suivant: dailyaverage. LOAD customername comme tempcustomername. Somme 40 vente montant 41 comme tempdailysaleamount. Date 40 saledate. MM DD AAAA 41 comme temporaire RESIDENT Groupe de ventes par nom de client. Saledate Ensuite, vous joindrez votre calendrier à votre tableau de la journée, avec le code suivant: Join 40 calctemp 41 LOAD resident RollingAverage L'étape suivante consiste à recréer votre champ clé en utilisant la date de lien: left join 40 calctemp 41 LOAD modkey. Linkdate. Nom de client amp amp amp amp linkdate comme keykey resident calctemp Maintenant, vous joindrez le champ totalsales dans le calctemp, hors de la clé de liaison que vous venez de faire: LEFT JOIN 40 calctemp 41 LOAD tempdailysaleamount comme totalsales. Tempcustomername amp amp date 40 tempsaledate. MMDDYYYY 41 en tant que clef de clé Resident dailyaverage Ce que nous venons d'accomplir est pour chaque client, pour chaque date, nous avons créé et relié les 14 champs principaux qui rouleront pour être la moyenne mobile de 14 jours. Cela peut être complété par le code suivant: table de vente. LOAD avg 40 totalsales 41 comme rollingaverage. Custname comme customername. Linkkey en tant que groupe de calctemp résidant sur le lien par custname. Modkey Vous serez laissé avec un tableau incluant votre moyenne calculée de 14 jours, qui peut être rejoint dans votre table de vente d'origine. L'ajout de ce champ calculé dans le script de chargement entraînera une charge plus importante, mais cela vaut la peine de voir à quel point le document devient plus réactif. À propos de Joe FuscoQlikView Emplois à Berkshire QlikView Emplois Tendance à la demande à Berkshire La tendance de la demande d'annonces d'emploi dans la région du Berkshire citant QlikView comme une proportion de tous les emplois informatiques avec un match dans la base de données et la catégorie Business Intelligence. QlikView Salary Trend in Berkshire Ce graphique fournit la moyenne mobile de 3 mois pour les salaires cités dans des emplois IT permanents citant QlikView à travers la région du Berkshire. Histogramme de salaire QlikView dans Berkshire Ce graphique fournit un histogramme de salaire pour les emplois informatiques citant QlikView dans la région de Berkshire au cours des 3 mois jusqu'au 13 janvier 2017. QlikView Emplois dans le Berkshire Le tableau ci-dessous examine la demande et fournit un guide des salaires médians cités Dans les emplois informatiques citant QlikView dans la région de Berkshire au cours des 3 mois au 13 Janvier 2017. La colonne de changement de classement fournit une indication de l'évolution de la demande dans chaque lieu sur la même période de 3 mois l'année dernière. Changement de rang sur la même période L'année dernière Correspondance Permanent IT Job Ads Salaire médian Les 3 derniers mois Ce forum semble être plus orienté vers plus de problèmes de programmation, mais je serais intéressé si quelqu'un regarderait le problème de logique dans le lien ci-dessous. Mon problème est de savoir comment calculer le total des 12 derniers mois en utilisant le calendrier déjà défini. J'ai trouvé très peu d'exemples de cela sur la communauté QV. S'il vous plaît voir le lien ci-dessous pour plus de détails. Je serais prêt à regarder un SQL ou une solution de script QV. Notre exercice financier s'étend de novembre à octobre. J'aimerais que l'utilisateur final sélectionne Année et un graphique pour afficher la dernière marge de 12 mois. J'ai eu des problèmes d'obtenir mon total à accumuler pour les mois précédents. Mon objectif serait de ressembler à la Rolling 12 Month Total - GP colonne dans le manuel caculated Excel image Objectif. (Regardez le lien QV pour la capture d'écran) Équation de Marge Rolling: ma tentative d'utiliser Set Analysis pour faire une équation avg courant MasterCalendar: ceci utilise masterdate pour relier des éléments ensemble. Ce calendrier fiscal est difficile à mettre en place avec rolling avg FiscalCalander Cela définit notre exercice financier Merci de prendre le temps de regarder ce problème. A demandé 12 juin à 13:48 J'espère que cela contient assez d'informations ndash octopusguy Jun 12 12 at 15:04 La solution n'est pas dans le calendrier. Vous devez créer un tableau croisé dynamique entre votre calendrier et la table des faits. Dans ce tableau pivot vous avez 2 type. DIRECT et CROSSING. Pour le type DIRECT, une ligne dans la table des faits est liée à la date dans le calendrier Pour le type CROSSING, une ligne dans la table des faits est liée à toutes les dates des 12 mois futurs dans le calendrier. Donc, dans Qlikview, vous utilisez le type DIRECT tout le temps, sauf quand vous voulez présenter pour chaque mois le total des 12 derniers mois. Dans ce cas, vous utilisez CROSSING parce que toutes les lignes sont liées aux dates des 12 mois futurs, donc cela signifie (point de vue inversé) qu'un mois est lié à toutes les données des 12 derniers mois.


No comments:

Post a Comment