Ibm Cognos Gleitender Durchschnitt


Wie man den bewegten Unterschied in Cognos berechnet 8 Problem (Zusammenfassung) Dieses Dokument beschreibt, wie man die Bewegungsdifferenz in Report Studio berechnet, wenn keine Bewegungsdifferenzfunktion verfügbar ist. Beheben des Problems Berechnen Sie die Bewegungsdifferenz anhand der Moving-Total-Funktion. Schritte: Öffnen Sie das Berichtsstudio mit dem Paket "Verkauf und Händler" Erstellen Sie einen leeren Kreuztabellen-Bericht Ziehen Sie und ziehen Sie die Produktlinie in den Zeilen und den Auftragsmonat in den Spalten Ziehen Sie die Einnahmen in der Abfrage Erstellen Sie ein anderes Datenelement (benennen Sie es D1) und verwenden Sie den folgenden Ausdruck: Moving-Total (Umsatz, 2 für Produktlinie) Anlegen eines anderen Datenelements (Name D2) und Verwendung des folgenden Ausdrucks: D1-Revenue Erstellen Sie ein anderes Datenelement (nennen Sie es Moving-Diff) und verwenden Sie den folgenden Ausdruck: Revenue-D2 Put Revenue und Moving-Diff als Maß im Kreuztisch Historische Nummer Dokumenteninformation Mehr Unterstützung für: Cognos 8 Business Intelligence Report Studio Software Version: 8.1, 8.2 Betriebssystem (e): Windows Geändertes Datum: 24 2008Gute Morgenstern TM1 Gurus, Im derzeit arbeiten an einem Verkauf Projekt, das eine gleitende durchschnittliche Regel erfordert. Abmessungen sind quotcustomerquot. QuotLocationquot. QuotMeasuresquot. "Jährlich, wie z. B. 2011.2012.2013 und quotdayquot mit den 365 Tagen des Jahres, das bis zum entsprechenden Monat als Eltern (Jul, Aug, Sep.) und dem Monat zum oberen Elternteil quotTotal Yearquot rollt (siehe Beispiel unten) Ich versuche Um den Umsatz täglich durchschnittlichen Wert auf der Grundlage einer 10 Tage Umzugszeit zu zeigen, zum Beispiel siehe unten Dies bedeutet, dass Mai-15 zeigt die avrg der Werte von Mai-15 bis Mai-02 und so weiter. Also meine Frage ist: Wie komme ich die Avrg rückwärts auf der Grundlage der vorherigen 10 Tage, die einen Wert haben, wenn es keinen Wert dann ausschließen. Was ich mit einem Wert meine, ist etwas in der Würfelzelle, auch wenn es eine Null ist. Jede Hilfe, Hinweise und Tipps werden sehr geschätzt. Winsonlee Regular Participant Beiträge: 180 Registriert seit: Do 01.07.2010 03:06 OLAP Produkt: Cognos Express Version: 9.5 Excel Version: 2007 Ort: Melbourne, Australien Nicht sicher, ob es über Regeln getan werden kann, wie Sie überspringen möchten Tage, die 0 ist. Ich habe versucht TI-Prozess, es zu tun und es ist erreichbar. Erstellen Sie eine Ansicht aller Tage auf N Element Ebene und Jahre und setzen Sie quotSkip Zero Blank Werte quot. Temp1 temp2 temp4 temp4 temp4 temp4 temp4 temp5 temp5 temp4 temp4 temp7 temp7 temp8 temp8 temp7 temp7 temp10 temp8 temp4 temp7 temp7 temp10 temp4 temp4 temp4 temp5 temp4 temp4 temp4 temp4 temp5 temp4 temp4 temp4 temp4 temp4 temp4 temp4 temp4 temp4 temp4 temp4 temp4 temp4 temp4 temp4 temp4 temp4 temp4 temp4 temp4 temp4 temp4 temp4 temp4 temp4 1 Weg, um es über Regeln zu tun, aber es ist nicht gerade hübsch. Setzen Sie ein Attribut gegen jeden Tag namens quotprior dayquot und bevölkern Sie es mit Ihnen wissen, was. Erstellen Sie eine zusätzliche Maßnahme namens quotCheckquot oder so ähnlich. 91Antwort (Tag, Tag, Tag), Einlasswert) (Cube, Dim1, Tag, Einlasswert) DB (Cube, Dim1, Dim2, Attrs (Tag, Tag, Tag) DB (Cube, Dim1, Dim2, Attrs (Tag, Attrs (Tag, Tag, Prior Tag), Prior Day), Intake Value) und so weiter 10 mal) Wie oben, aber für das quotCheckquot-Maß. Du könntest es auch über einen Dimix machen, der in der Regel sauberer aussehen kann, aber von Elementen abhängig ist, die sich nicht bewegen. Vorausgesetzt, dass mindestens 1 Ihrer 10 Tage einen Wert haben, sollten Sie wahrscheinlich betrügen und füttern Sie einfach die ganze Maßnahme. Ein schönerer Weg, es zu tun, würde die Werte in einen Zwischenwürfel nehmen und mit den Konsolen die Mittelwerte durchführen und sie dann wieder hereinbringen. LORR schrieb: Was ich mit einem Wert meint, ist etwas in der Würfelzelle, auch wenn es ein Null. Ich vermute, dass du meinst, dass Null ein signifikanter Wert ist, aber da kann es Tage geben, für die es keinen Wert gibt. Der akzeptierte Weg, dies in TM1 zu implementieren, ist die Verwendung von UNDEFVALS (publib. boulder. ibminfocenterctm1v9r5m0index. jsptopic2Fcom. ibm. swg. im. cognos. tm1ref.9.5.2.doc2Ftm1refid7852undefvals. html) in der Regel. Seien Sie sich jedoch bewusst, dass, sobald Sie es in der Regel es wird eine dauerhafte Wirkung auf den Würfel und nehmen es aus wird nicht umkehren, dass Wirkung. Außerdem glaube ich nicht, dass es in einer Regel mehr möglich ist (9.5.2 und höher), zwischen einer Zelle, die eine Null hat, und eine Zelle mit dem speziellen undefinierten Wert zu unterscheiden. Ich würde mich freuen, sich in dieser Richtung als falsch erwiesen zu haben. In früheren Versionen spielten sie mehr als null, aber nicht mehr. Alles in allem, wenn Sie die Daten mit TI importieren, wäre es wahrscheinlich sicherer und verständlicher, dass Sie eine zusätzliche Maßnahme (z. B. quotHas Dataquot) haben, die Sie mit 1 für jeden Verkaufswert bevölkern, den Sie bevölkern. Natürlich, wenn die Werte von Benutzern im Cube Viewer oder im Contributor eingegeben werden, können Sie dies nicht tun. Winsonlee Regular Participant Beiträge: 180 Registriert seit: Do 01.07.2010 03:06 OLAP Produkt: Cognos Express Version: 9.5 Excel Version: 2007 Ort: Melbourne, Australien Sieht aus wie eine gute Idee. Aber ich möchte über die Regeln bestätigen. (Mai-07 Mai-08 Mai-09 Mai-07 Mai-07 Mai-07 Mai-07 Mai-07 Mai-07 Mai-07 Mai-07 Mai-07 Mai-07 Mai-07 Mai-07 236.468 Mai-10 106,078 Mai-11 426,669 Mai-12 0 Mai-13 0 Mai-14 296,722 declanr hat geschrieben: Ich kann an 1 Weg, um es über Regeln zu tun, aber es ist nicht gerade schön. Setzen Sie ein Attribut gegen jeden Tag namens quotprior dayquot und bevölkern Sie es mit Ihnen wissen, was. Erstellen Sie eine zusätzliche Maßnahme namens quotCheckquot oder so ähnlich. 91Antwort (Tag, Tag, Tag), Einlasswert) (Cube, Dim1, Tag, Einlasswert) DB (Cube, Dim1, Dim2, Attrs (Tag, Tag, Tag) DB (Cube, Dim1, Dim2, Attrs (Tag, Attrs (Tag, Tag, Prior Tag), Prior Day), Intake Value) und so weiter 10 mal) Wie oben, aber für das quotCheckquot-Maß. Du könntest es auch über einen Dimix machen, der in der Regel sauberer aussehen kann, aber von Elementen abhängig ist, die sich nicht bewegen. Vorausgesetzt, dass mindestens 1 Ihrer 10 Tage einen Wert haben, sollten Sie wahrscheinlich betrügen und füttern Sie einfach die ganze Maßnahme. Eine schönere Art, es zu tun, wäre vielleicht die Werte auf einen Zwischenwürfel und mit Konsolen, um die Mittelwerte zu machen und dann bringen sie wieder in. Winsonlee Regular Teilnehmer Beiträge: 180 Registriert: Thu 01.07.2010 3:06 OLAP Produkt : Cognos Express Version: 9.5 Excel Version: 2007 Ort: Melbourne, Australien mit den Regeln definieren von declanr, ich denke, es ist möglich, wenn das Jahr und die Monatsdatum Dimension zu einer Dimension kombinieren und Attribut verwenden, um den vorherigen Tag nach dem zu definieren Existenz der Daten, aber dies erfordert eine Menge Arbeit, um das Attribut auch beizubehalten. Winsonlee Regular Participant Beiträge: 180 Registriert seit: Thu Jul 01, 2010 3:06 am OLAP Produkt: Cognos Express Version: 9.5 Excel Version: 2007 Ort: Melbourne, Australien, das aussieht wie eine resonable Lösung, die nicht viel Arbeit erfordert, um es zu pflegen. Aber möchte noch weiter betonen, dass mit dimix die in der Dimension erzeugte Sequenz des Elements wichtig ist. ZB wenn Jun nachträglich alle Tage nach Jul und all den Tagen erstellt wird, also wird es zu einer Zeit kommen, wo die vorherige Periode von Jul-01 Jul sein wird. So ist es ratsam, alle Elternelement zuerst dann nur die Tage zu schaffen Element, so dass alle Tage in ordnungsgemäße Reihenfolge sind. Winsonlee hat geschrieben: Sieht aus wie eine gute Idee. Aber ich möchte über die Regeln bestätigen. Mit den Regeln gegeben würde es nicht Mai-14 (Mai-07 Mai-08 Mai-09 Mai-10 Mai-11 Mai-14) 6 ah ja ich sehe ich falsch lesen die Frage. Ich nehme es jetzt als das OP will immer durchschnittlich 10 Tage wert von Daten, aber es wird nur immer die letzten 10 Tage, die Werte in ihnen hatte. Wenn das der Fall wäre, hätte ich noch das quotPriorquot-Attribut, aber bevölkern es durch eine Regel (ich sage das ist was ich tun würde. In Wirklichkeit würde ich ein TI verwenden, aber wenn eine Regel wesentlich war). Die Regel wäre so etwas wie: Prior Periods: If (DB (Cube, Dim1, Dim2, Dimnm (Tag, Dimix (Tag, Tag) -1), AVG Job Val) ltgt0, Dimnm (Tag, Dimix (Tag, Tag) -1), If (DB (Cube, Dim1, Dim2, Dimnm (Tag, Dimix (Tag, Tag) -2), AVG Job Val) ltgt0, Dimnm (Tag, Dimix (Tag, Tag) -2), Wenn ( DB (Cube, Dim1, Dim2, Dimnm (Tag, Dimix (Tag, Tag) -3), AVG Job Val) ltgt0, Dimnm (Tag, Dimix (Tag, Tag) -3), und so weiter und so weiter wie Viele Male, wie Sie denken, wäre notwendig, um zu umfassen, aber viele Leerzeichen sind wahrscheinlich in einer Reihe. Wenn die Dim1, Dim2 etc alle eine andere nehmen auf diese müssen Sie möglicherweise tun, es wieder eine benutzerdefinierte Kontrolle Würfel anstatt der tatsächlichen Attribute Würfel, wie ich sage, das fängt an, eine sehr unordentliche Methode zu sehen, und ich würde wahrscheinlich versuchen, es selbst zu vermeiden, aber ich denke es würde funktionieren. Natürlich, wenn du das getan hättest, würde die Regel von meinem vorherigen Kommentar nur eine Trennung haben 10 anstelle des Variablen Nenners. Geben Sie einen geforderten gleitenden Durchschnitt aus, so dass ein Datumsbereich zurückgegeben und berechnet werden kann. Problem (Abstract) Erstellen Sie einen Bericht, der die Verkaufsdaten für einen Datumsbereich zurückgibt, der auf einem angeforderten Datum endet. Die Daten werden verwendet, um einen 3-monatigen gleitenden Durchschnitt zu erstellen, der dynamisch sein wird, so dass zu einem beliebigen Zeitpunkt 3 Monate abgeholt und berechnet werden können. Möchten Sie den Report verwenden, um einen IQD zu erzeugen, der als Quelle für PowerPlay Transformer verwendet werden soll. Beheben des Problems 4 Schritte erforderlich 1. Erstellen Sie eine Eingabeart in der Eingabeaufforderung auf der Grundlage der Datums - oder Datumszeitspalte (zB Datumsabfrage) 2. Erstellen Sie die folgende Berechnung: addmonths (Datumsaufforderung, -3) (zB 3 Monate) 3. Erstellen Sie eine Filter mit dem folgenden Ausdruck: Datum Spalte zwischen 3 Monaten und Datum Aufforderung 4. Erstellen Sie eine Berechnung für den Durchschnitt, zB Gesamtumsatz3

Comments