Hur man beräknar rörlig skillnad i Cognos 8 Problem (Abstrakt) I det här dokumentet beskrivs hur man beräknar rörlig skillnad i Report Studio när ingen flyttbar skillnadsfunktion är tillgänglig. Lösning av problemet Beräkna rörlig skillnad baserat på den totala rörelsefunktionen. Steg: Öppna rapportstudio med Go Sales och Retailers-paketet Skapa en tom kryssningsrapport Dra och släpp produktlinjen i raderna och Ordermånaden i kolumnerna Dra in Inkomster i frågan skapa ett annat Dataobjekt (namnge det D1) och använd följande uttryck: rörelse-total (intäkt, 2 för produktlinje) Skapa en annan datapost (namnge det D2) och använd följande uttryck: D1-intäkter Skapa en annan datapost (benämn den flytta sig) och använd följande uttryck: Intäkter-D2 Sätta in intäkter och Moving-diff som mått i crosstaben Historisk Nummer Dokumentinformation Mer stöd för: Cognos 8 Business Intelligence Report Studio Programvaruversion: 8.1, 8.2 Operativsystem: Windows Modifierat datum: 24 2008God morgonmiddag TM1-guruer, jag arbetar för närvarande med en försäljning projekt som kräver en glidande medelregel. Mått är quotcustomerquot. quotLocationquot. quotMeasuresquot. quotYearquot som 2011,2012,2013 och quotdayquot med årets 365 dagar som rullar upp till motsvarande månad som förälder (jul, aug, september) och månaden till överordnade moderbolaget (se exempel nedan) jag försöker för att visa försäljningsdagens genomsnittliga värde baserat på en 10 dagars flyttperiod, till exempel se nedan. Det betyder att 15 maj visar avrg för värdena från 15 maj till maj 02 och så vidare. Så min fråga är: Hur jobbar jag ut avrg bakåt baserat på de föregående 10 dagarna som har ett värde mot, om det inte finns något värde så utesluta det det. Vad jag menar med ett värde är något i kubcellen även om det är noll. Eventuella hjälp, tips och tips kommer att uppskattas. winsonlee Regelbunden deltagare Inlägg: 180 Anställd: Thu Jul 01, 2010 3:06 am OLAP Produkt: Cognos Express Version: 9.5 Excel Version: 2007 Plats: Melbourne, Australien Inte säkert om det kan ske via regler som du vill hoppa över dagar som är 0. Jag försökte använda TI-processen för att göra det och det är möjligt. Skapa en bild av alla dagar på N elementnivå och år och sätt in quotSkip Zero Blank valuesquot. temp1 temp2 temp2 temp3 temp3 temp4 temp4 temp4 temp5 temp5 temp6 temp6 temp7 temp7 temp8 temp8 temp9 temp9 temp10 temp10 värde CELLPUTN ((temp1 temp2 temp3 temp4 temp5 temp6 temp7 temp8 temp9 temp10) 10, test4, årX, monthX, avrg JOB Val) Jag kan tänka på Ett sätt att göra det via regler men det är inte riktigt vackert. Sätt ett attribut mot varje dag som heter quotprior dayquot och fyll i det med du vet vad. Skapa en extra åtgärd kallad quotCheckquot eller något liknande. 91 (Kub, dim1, dim2. Dag, intagsvärde) DB (Cube, dim1, dim2, Attrs (dag, dag, föregående dag), intagsvärde) DB (Cube, dim1, dim2, Attrs (Day, Attrs (dag, dag, föregående dag), föregående dag), intagsvärde) och så vidare 10 gånger) Samma som ovan men för quotCheckquot-åtgärden. Du kan också göra det via en dimix som kan se renare ut i regeln men är beroende av element som inte rör sig. Om du antar att minst 1 av dina 10 dagar kommer att ha ett värde bör du troligen fuska och bara mata hela åtgärden. Ett trevligare sätt att göra det kanske skulle ta värdena ut till en mellanliggande kub och använda konsoler för att göra medelvärdena och sedan ta tillbaka dem. LORR skrev: Vad jag menar med ett värde är något i kubcellen även om det är en noll. Jag antar att du menar att noll är ett betydande värde men att det kan finnas dagar för vilka det inte finns något värde. Den accepterade sättet att implementera detta i TM1 är att använda UNDEFVALS (publib. boulder. ibminfocenterctm1v9r5m0index. jsptopic2Fcom. ibm. swg. im. cognos. tm1ref.9.5.2.doc2Ftm1refid7852undefvals. html) i regeln. Men var medveten om att när du har lagt det i regeln kommer det att få en permanent effekt på kuben och att ta ut den kommer inte att motverka den effekten. Dessutom tror jag inte att det är möjligt längre (9.5.2 och senare) i en regel att skilja mellan en cell som har en noll i den och en cell med det speciella odefinierade värdet. Jag skulle vara glad att bli visad fel i detta. I tidigare versioner brukade de jämföra mer än noll men inte mer. Allt som anses om du importerar data med TI skulle det förmodligen vara säkrare och förståeligt att ha en extra åtgärd (t ex quotHas Dataquot) som du fyller med 1 för varje försäljningsvärde som du fyller i. Naturligtvis om värdena anges av användare i kubvisaren eller i bidragsgivaren kan du inte göra det här. winsonlee Vanlig deltagare Inlägg: 180 Anställd: Tis 01 Jul, 2010 3:06 AM OLAP Produkt: Cognos Express Version: 9.5 Excel Version: 2007 Plats: Melbourne, Australien Ser ut som en bra idé. men jag skulle vilja bekräfta reglerna. med hjälp av de angivna reglerna skulle det inte innebära att det var maj 14 (maj-07 maj-08 maj-09 maj-10 maj-11 maj-14) 6 maj-05 0 maj-06 0 maj-07 187 989 maj-08 203 375 maj-09 236.468 maj-10 106.078 maj-11 426.669 maj-12 0 maj-13 0 maj-14 296 722 declanr skrev: Jag kan tänka mig en väg att göra det via regler men det är inte exakt vackert. Sätt ett attribut mot varje dag som heter quotprior dayquot och fyll i det med du vet vad. Skapa en extra åtgärd kallad quotCheckquot eller något liknande. 91 (Kub, dim1, dim2. Dag, intagsvärde) DB (Cube, dim1, dim2, Attrs (dag, dag, föregående dag), intagsvärde) DB (Cube, dim1, dim2, Attrs (Day, Attrs (dag, dag, föregående dag), föregående dag), intagsvärde) och så vidare 10 gånger) Samma som ovan men för quotCheckquot-åtgärden. Du kan också göra det via en dimix som kan se renare ut i regeln men är beroende av element som inte rör sig. Om du antar att minst 1 av dina 10 dagar kommer att ha ett värde bör du troligen fuska och bara mata hela åtgärden. Ett trevligare sätt att göra det kanske skulle ta värdena ut till en mellanliggande kub och använda konsoler för att göra medelvärdena och sedan ta tillbaka dem. Winsonlee Vanlig deltagare Inlägg: 180 Anställd: Thu Jul 01, 2010 3:06 am OLAP Produkt : Cognos Express Version: 9.5 Excel Version: 2007 Plats: Melbourne, Australien med hjälp av reglerna definieras av declanr, antar jag att det är möjligt om års - och månadsdimensionen kombineras i en dimension och använder attribut att definiera tidigare dag enligt existerande data men det kommer att kräva mycket arbete för att behålla attributet också. winsonlee Regelbunden deltagare Inlägg: 180 Anställd: Thu Jul 01, 2010 3:06 am OLAP Produkt: Cognos Express Version: 9.5 Excel Version: 2007 Plats: Melbourne, Australien som ser ut som en resonabel lösning som inte kräver mycket arbete för att behålla det. men vill ytterligare betona att med hjälp av dimix är sekvensen av element som skapas i dimensionen viktig. till exempel om juni skapas följer alla dagar efter jul och alla dagar, därför kommer det att komma till en tid där den föregående perioden jul-01 blir jul. så det är lämpligt att skapa allt moderelement först då bara dagarna element så att alla dagar är i rätt ordning. winsonlee skrev: Ser ut som en bra idé. men jag skulle vilja bekräfta reglerna. med hjälp av de angivna reglerna skulle det inte innebära att det var maj-14 (maj-07 maj-08 maj-09 maj-10 maj-11 maj-14) 6 ah ja jag förstår missförståelsen. Jag tar nu det eftersom OP alltid vill ha genomsnittlig 10 dagars värde av data men det kommer bara att bli de senaste 10 dagarna som hade värden i dem. Om så är fallet skulle jag fortfarande ha quotPriorquot-attributet, men befolka det med en regel (jag säger att det här är vad jag skulle göra. I själva verket skulle jag använda en TI men om en regel var nödvändig). Regeln skulle vara något som: Tidigare Perioder: Om (DB (Cube, Dim1, Dim2, Dimnm (Day, Dimix (Day, Day) -1), AVG Job Val) ltgt0, Dimnm -1), Om (DB (Cube, Dim1, Dim2, Dimnm (Day, Dimix (Day, Day) -2), AVG Job Val) ltgt0, Dimnm DB (Cube, Dim1, Dim2, Dimnm (Dag, Dimix (Dag, Dag) -3), AVG Job Val) ltgt0, Dimnm (Dag, Dimix (Dag, Dag) -3), osv. många gånger som du tror skulle vara nödvändigt att omfatta men många ämnen kommer sannolikt att vara i rad. Om Dim1, Dim2 etc alla kräver en annan ta på dig skulle du behöva göra det igen en anpassad kontroll kub istället för den faktiska attribut kub. Som jag säger börjar detta se en väldigt rörig metod och jag skulle förmodligen försöka undvika det själv. Men jag tror att det skulle fungera. Naturligtvis om du gjorde det här skulle regeln från min tidigare kommentar bara ha en uppdelning av 10 istället för den variabla nämnaren. Skapa en Rörlig genomsnittsrapport, så att ett datumintervall kan returneras och beräknas. Prob lem (Abstrakt) Skapa en rapport som returnerar försäljningsdata för ett datumintervall som slutar på en förfrågad dag. Uppgifterna kommer att användas för att skapa ett 3 månaders glidande medelvärde som kommer att bli dynamiskt, så att 3 månader kan hämtas och beräknas när som helst. Vill du kunna använda rapporten för att skapa en IQD som ska användas som en källa för PowerPlay Transformer. Åtgärda problemet 4 steg krävs 1. Skapa en typ in prompt baserat på datum eller datum-tid kolumn (t. ex. Date Prompt) 2. Skapa följande beräkning: addmonths (Date Prompt, -3) (t. ex. 3months) 3. Skapa en filtrera med följande uttryck: Datum kolumn mellan 3months och Date prompt 4. Skapa en beräkning för genomsnittet, t. ex. Summa försäljning3
Comments
Post a Comment