Monday 7 August 2017

Moving Media Cognos Rapporto Studio


Moving-media che esclude record specifici. Moving-media che esclude record specifici. Software: Cognos BI 8211 Report Studio, database relazionali, v10.0 Oggetto: media mobile delle vendite per 2 settimane fa, considerando soltanto i prodotti che hanno un minimo di 4 settimane di vendita. Dati di esempio: Prodotto Tipo categoria settimane Ufficio vendite, forniture blocco di carta 1 10 da ufficio, bancari blocco di carta 2 4 Materiale per ufficio blocco di carta 3 5 Materiale per ufficio blocco di carta 4 2 ufficio blocco di carta 5 1 ufficio Penne 1 Forniture 1 Ufficio Penne 2 2 ufficio Penne 3 2 Prodotti per ufficio Penne 4 3 Ufficio Matite 1 2 forniture per ufficio Matite 2 1 ufficio Matite 3 1 ufficio gomme 1 1 ufficio gomme 2 2 Esempio: Attrezzature da ufficio, 8211 cancellatori 8211 settimane Sale 2, dovrebbe in media il seguente: Penne 8211 settimane in vendita 2 8211 vendite 2 Appunti di carta 8211 settimane in vendita 2 8211 di vendita 4 matite non considerato perché ha solo 3 settimane in vendita. Questo è solo un semplice esempio e non è dati reali. Dont significa dumb down l'esempio, ma sembra confuso per me. Non riesco a Cognos di lavorare con me su di esso. Questo è quello che ho finora: media mobile (vendite, 2 per settimane in vendita) C'è un modo obviouseasy per poter escludere dalle medie dove tipo di prodotto non ha un minimo di 4 settimane di SaleRunning-totale su un cubo Il concetto di un rodaggio totale è concetto relazionale. Poiché una tabella relazionale può essere visualizzata in due sole dimensioni è molto facile da capire e visualizzare esecuzione e aggregati movimento. Una sorgente di dati multidimensionale, d'altra parte, è più complessa. Si potrebbe desiderare l'aggregato in esecuzione su una dimensione, ma non un altro. Quando si tenta di utilizzare le funzioni di aggregazione in esecuzione su un cubo non è possibile garantire risultati coerenti, drilldowns potrebbero comportarsi in modo imprevisto, e tutto il tempo di elaborazione è aumentata come il gruppo di risultati deve essere elaborato a livello locale. Fortunatamente esecuzione e aggregati in movimento possono essere gestiti con funzioni puramente dimensionali. Si consideri il seguente richiesta. Un grafico a linee che mostra il totale parziale delle vendite per l'esercizio corrente e precedenti. L'asse ordinale mostra tutti i mesi dell'anno in corso. Per iniziare a creare un nuovo report grafico a linee. Creare un calcolo query nella zona di categoria con la seguente espressione (sostituendoli con valori corretti dal proprio cubo): Ciò restituirà i discendenti mese del 2010 (si veda un precedente post su un modo migliore di trovare l'anno in corso). Creare un'espressione di query nella serie con la seguente espressione: totali (Cube. Measures. Sales all'interno set PeriodsToDate (Cube. Date. Date. Year, CurrentMember (Cube. Date. Date))) Eseguire il report. Se tutto va bene si dovrebbe vedere la linea crescente come previsto. È importante comprendere il meccanismo. L'espressione nella serie viene elaborato per ogni elemento nell'asse ordinale. La funzione CurrentMember prenderà il membro that8217s in corso di valutazione. Finora 1 gennaio sembrerebbe l'espressione come: totale (Cube. Measures. Sales all'interno set PeriodsToDate (Cube. Date. Date. Year, Cube. Date. Date. Month-GT: PC. MEMBER.20100101-20100131)) Quando si arriva alla categoria ottobre è apparirà come: totale (Cube. Measures. Sales all'interno set PeriodsToDate (Cube. Date. Date. Year, Cube. Date. Date. Month-GT: PC. MEMBER.20101001-20101031)) la PeriodsToDate funzione prenderà il membro e creare un insieme di componenti che iniziano con il primo membro del livello specificato al membro in corso di valutazione. Ottobre 2010. restituirebbe il set. January2010, February2010, March2010, April2010, May2010, June2010, July2010, August2010, September2010, ottobre 2010.. La prossima domanda è quello di vedere il totale parziale per l'anno precedente. In un database relazionale si potrebbe fare questo con un outer join. Qui it8217s solo una logica estensione della stessa espressione. totale (Cube. Measures. Actual entro set PeriodsToDate (Cube. Date. Date. Year, ParallelPeriod (Cube. Date. Date. Year, 1, CurrentMember (Cube. Date. Date)))) Questo è essenzialmente la stessa espressione, con la funzione ParallelPeriod avvolgendo il CurrentMember. Lo stesso concetto può essere utilizzato per i totali mobili. Invece della funzione PeriodsToDate, è necessario utilizzare LastPeriods (). totali (Cube. Measures. Sales all'interno LastPeriods set (5, CurrentMember (Cube. Date. Date))) questo sarà sempre creare una totale per un set di 5 membri che terminano con il membro in corso di valutazione. Here8217s una piccola sfida. Sapendo questo, come si fa a fare un rodaggio totale al contrario Condividi questo: grazie per le spiegazioni chiare e precise. La mia sfida è quella di calcolare un mese su mese varianza utilizzando una sorgente OLAP (cubo Powerplay). Ho un campo incrociato con colonne mesi, le righe sono 3 misure (quest'anno reali, questo bilancio quest'anno, l'anno scorso reale) I8217d come per aggiungere un 4 ° misura che mostra (per tutti i mesi da inizio anno), la variazione 8216Actuals8217 dal mese precedente ( vale a dire 20 la crescita nel mese di agosto 2010 (variazione tra luglio e agosto). 5 la crescita nel settembre 2010, 5 calo nel mese di ottobre 2010) ecc luglio agosto Settembre ottobre effettiva 100 120 126 119.7 mese Cmb 20 5 -5 ltltltlt questa è la linea che ho bisogno aggiungere bilancio 15 16 17 18 I039m un po 'nuova per MDX 8211 stato dilettarsi con tuple, i periodi paralleli, PrevMember ecc 8211 nessuno mi dà quello che mi serve) (ho una certa flessibilità nella progettazione del cubo, se necessario 8211, ma sto trattando con molto grande volumi di dati) sarebbe davvero apprezzare tutto il consiglio. thx, Gill cosa you8217re che descrive è un movimento-totale (beh, un movimento cambio immagino). Questo è in realtà molto più facile da realizzare rispetto al rodaggio totale ho descritto. You8217ll necessario utilizzare un calcolo che troverà il 1 8211 (misura precedente mese di misura). Al fine di trovare la misura precedente mese you8217ll bisogno di fare una tupla sulla misura e il PrevMember () del mese nella colonna. La funzione you8217re magia cercando CurrentMember (). CurrentMember restituirà il membro della gerarchia specificato che è sopra l'incrocio corrente. 1 8211 (Misura tuple (CurrentMember (Cube. Dim. Time), Measure)) dovrebbe essere quello che you8217re cercando. HI Paul 8211 grande spiegazione. Sono in grado di fare in esecuzione numero di usando il vostro suggerimento. Mi chiedevo se c'è qualche modo per implementare conteggio in esecuzione su una dimensione in cui il livello è stata soppressa nel cubo. Dimension Gerarchia Tutti i membri Member1 Member1.1 Member1.2 Member2 Member2.1 Member2.1.1 Member2.1.2 Member2.2 Member3 Say Ho selezionato il membro 1.1, Member2.1.1, Member2.2, Member3 nella pagina di richiesta. Vorrei fare un conteggio in esecuzione sul membro. E 'questo Member1.1 realizzabile 8211 1 Member2.1.1 8211 2 Member3 8211 3 That8217s un problema I8217ve rivisitato più volte, ma ho can8217t pensare a un modo per ottenere che al lavoro. Al meglio della mia conoscenza non esiste una funzione MDX che restituirà l'indice di un membro specifico in un set (il contrario di voce ()). Il metodo che ho postato su basa sui membri contigui in un solo livello. Potreste essere in grado di barare con qualche sapiente uso delle funzioni di report. Per esempio è possibile utilizzare il RowNumber () per simulare il funzionamento-count, e you8217ll essere in grado di usare le espressioni di report per qualsiasi calcolo è necessario: RowNumber) Query1.Measure (. Non è la migliore work-around, ma l'unico che mi viene in mente. Hi Paul 8211 Grazie per la pronta risposta. Io sono in mezzo a giocare con una combinazione di numero di livello e ultimo periodo per generare un ID univoco e classificare l'ID univoco per darmi il conteggio. Dolorosamente lunghi calcoli e speravo vostro suggerimento su Number Row può fare il trucco. Anche se posso inserire un numero di riga (mediante gli oggetti inseribili) in un elenco senza un problema però ho can8217t riferimento a esso in un elemento di dati in quanto non è un elemento di query. Puoi eleborate sul numero di riga. Molte grazie ancora per il suggerimento I8217ve state anche giocando con l'idea di rango. Secondo per aiutare il tipo di classifica (Olympic, denso, etc.) è determinato dal tipo di cubo utilizzato. rango (1 entro Test set) è stato sempre tornando 1, così sembra che PowerCube rango probabilmente sta usando classifica denso. E 'possibile che altri cubi utilizzano diversi tipi di classifica, ma ho solo l'accesso al PowerCube in questo momento. Quando si inserisce il numero di riga nella lista you8217re utilizzando un rapporto di espressione. Dal momento che la lista è associato a una query specifica è possibile fare riferimento elementi di dati da quella query all'interno dell'espressione rapporto. Per esempio let8217s dire la vostra lista ha Anno, Nome del prodotto, le vendite totali da Query1. Si potrebbe mettere un calcolo Layout nella colonna più a sinistra con la seguente espressione: RowNumber () Query1.Sales totale. Che moltiplicare il totale delle vendite per il numero di riga. Se you8217re cercando di riferimento quantità di vendite, che doesn8217t compare nella lista, è necessario includere nelle proprietà della lista (sotto le proprietà c'è una fila chiamato proprietà, questo forza l'elemento di dati da inserire nel SQL, anche se non it8217s una delle colonne della lista). Hi Paul8230I sono in attesa per il vostro aiuto per la mia domanda precedente e potrebbe anche aiutarmi a trovare rango quando la colonna non è in campo incrociato. Ho istruzioni nella pagina del report, quando non sto selezionando alcuna richiesta rango funziona correttamente, ma quando seleziono qualsiasi rango prompt non è working..the selezionare prompt non è presente come riga o colonna in scheda croce. Sembra che sta calcolando rango primo e filtrare i valori in base ai valori di prompt. Apprezzare il vostro aiuto. Sto lavorando su un semplice report incrociato con i dati relazionali. Sono in grado di calcolare il movimento-totale in ordine crescente, c'è un modo per calcolare il movimento-totale, al fine Potete per favore darmi qualche suggerimento You8217re probabilmente facendo qualcosa come la corsa-totale (misura per l'attributo) decrescente. Per invertire tale tendenza non vi resta che trovare il totale e sottrarre il funzionamento: totale (misura per l'attributo) 8211 rodaggio totale (misura per l'attributo) Grazie per la risposta Paul Nei seguenti esempi, movingtotal (misura, 2 per l'attributo) Esempio 1 i valori sono corretti e se voglio ottenere gli stessi risultati anche se ordinare la colonna date per disc cosa devo fare (funzione movingtotal è semplicemente calcolando misurare precedente valore di misura, indipendentemente dell'ordine) Esempio 1: le date sono in ordine crescente Jan 1 ° movingtotal 2 gennaio movingtotal 3 gennaio movingtotal a 10 100 10 20 2010 30 30 3020 50 B 50 500 50 70 7050 120 80 8070 150 C 100 1000 100 150 150100 250 300 300150 450 Esempio 2: Le date sono in ordine disc 3 gennaio movingtotal Jan 2 ° movingtotal 1 gennaio movingtotal A 30 300 30 20 2030 50 10 1020 30 B 800 80 70 80 7080 150 50 5070 120 C 3000 300 150 300 450 150300 100 100150 250 Spero la mia domanda è chiaro ora. Tutti i suggerimenti sarebbero apprezzati It8217s chiaro, ma molto difficile. Dal momento che i totali in movimento sono applicati in base alla selezione, è necessario eseguire prima che il calcolo, quindi ordinare in seguito. Creare la query, A, che ha il totale in movimento, quindi creare un'altra query, B, sulla base di A. Dal momento che le aggregazioni sono fatte in un qualsiasi ordinamento fatto in B non avrà effetto dei dati. Ciao Paolo, I8217m cercando di calcolare il rodaggio la differenza per tutti i mesi di un anno. La fonte dei dati è il cubo e il tipo di rapporto è incrociato. La mia misura è Empcount. Voglio ottenere qualcosa di simile gen-11 feb-11 8230 dic-11 A1 10 20 5 A2 8 13 20 e così via. Il mio problema nasce dal fatto ottengo A1, A2, ecc da una dimensione, che sono figli di una categoria 8216A8217. Ottengo A1, A2 da un'espressione di calcolo (ad esempio DataItemA) proposta dal discendenti (filtro (cube. DimA. DimA, didascalia (cube. DimA. DimA) pA), 1). Fino a questo punto ho risultato corretto. Ora, quando provo ad usare un'espressione rodaggio differenza (empcount per DataItemA), mi dà un errore che dice differenza esecuzione non possono essere utilizzati nel contesto in cui viene utilizzato. Qualsiasi aiuto è possibile fornire sarà di grande aiuto. Hi Amit Benvenuti nel meraviglioso mondo di report dimensionali. Le funzioni di esecuzione non sono supportati affatto nelle query dimensionali. Il che è una buona cosa, dal momento che le funzioni di esecuzione sono molto limitante. Invece you8217ll devono utilizzare le funzioni dimensionali per ottenere quello che ti serve. Se ho capito bene il tuo campi incrociati mostra la EmpCount per ciascuno una per ogni mese. Hai un pari sotto il Un nodo che mostra il totale per una per ogni mese. Sotto il totale che si desidera vedere la differenza in esecuzione di ogni mese. Il nodo A e totale che già avete. La differenza in movimento può essere calcolato trovando la PrevMember () della CurrentMember () della data Gerarchia. Prova a fare questo: creare un nuovo elemento di dati chiamato SelectedA: membro (aggregato (currentMeasure all'interno del filtro set (cube. DimA. DimA, didascalia (cube. DimA. DimA) PA)), 8217SelectedA8217,8217SelectedA8217) Questo creerà un membro calcolato che è possibile utilizzare in tuple. Successivo creare l'elemento di dati si aggiungerà al campo incrociato: SelectedA 8211 tupla (SelectedA, PrevMember (CurrentMember (Cube. Time. Time))) Hey Paul, You8217re un genio report dimensionali. Non riuscivo a capire un 100 di quello che mi aveva suggerito di fare soprattutto nell'espressione SelectedA: membro (aggregato (currentMeasure all'interno del filtro set (cube. DimA. DimA, didascalia (cube. DimA. DimA) PA)), SelectedA, 8217SelectedA ) come ho pensato che sarebbe stato tipo di riferimento circolare, ma resi conto della parte SelectedA, 8217SelectedA è solo stringa. Ma ha funzionato. C'è una cosa però che non è accaduto. Ho bisogno la differenza in esecuzione o il dato differenza di essere vuota sotto gen-11. Attualmente si mostra un valore e si sta lavorando come da definizione ma sto filtrando la query per il 2011 e mi mostra la differenza per il dicembre del 2010 e gennaio del 2011, che I8217m cercando di evitare. E 'possibile vuoto è sotto gen-11, anche con il complesso defintion Bene, la query funziona come previsto 8211 it8217s che vi mostra la differenza corretto per dic-GEN nascondere il valore attraverso un trucco nella query è possibile, ma io il sospetto sarebbe anche diminuire le prestazioni di query. Si tratta di un campo incrociato, sì, cosa si potrebbe fare è condizionatamente nascondere il valore della prima colonna. Creare una variabile booleana, lo chiamano 8220notFirstColumn8221. Utilizzare il 8220ColumnNumber espressione () 18221. Sbloccare il report e utilizzare tale variabile come variabile di rendering per il valore nelle intersezioni. D'altra cosa che ho dimenticato di dire è che ho una colonna totale totale dei dipendenti e ho bisogno la differenza in esecuzione sul totale dei A1, A2, ecc qualcosa di simile. Gen-11 feb-11 8230Nov-11 dic-11 A1 10 20 6 5 A2 8 12 18 20 8230 Un 1 3 3 2 Totale Emp 46 50 48 45 Esecuzione Diff 4 -3 Paul vi leggenda 8211 grazie per questo stavo usando totale (MyMeasure entro periodsToDate8230 set ma ha trovato avevo bisogno utilizzare in modo esplicito totali (Cube. Measures. Sales entro periodsToDate8230 set per farlo funzionare correttamente. ringraziarvi ancora una volta devo calcolare in esecuzione contare su un cubo in base al parametro anno. inoltre ho bisogno per mostrare l'anno precedente in esecuzione contare su un grafico a linee. Vi prego di suggerire come io lo faccio con il parametro l'espressione funziona nel contesto di una serie su uno spigolo. ad esempio, una serie di mesi sulle righe a campi incrociati. in che modo è il conteggio parziale dovrebbe essere mostrato rispetto all'anno Se è necessario mostrare i mesi dell'anno si può fare qualcosa di simile discendenti (prompt (8216Year8217,8217mun8217), MonthLevel). posto che sulle righe, e utilizzare il totale (o contare o media) (misura entro set PeriodsToDate (ecc)). Per mostrare l'anno precedente, è sufficiente utilizzare la funzione di periodo parallelo come illustrato sopra (copiato qui). totale (Cube. Measures. Actual entro set PeriodsToDate (Cube. Date. Date. Year, ParallelPeriod (Cube. Date. Date. Year, 1, CurrentMember (Cube. Date. Date)))) Paolo, mi piace il tuo blog e avere imparato molto da esso. Sto cercando di fare un grafico a linee cumulativo mostra due anni rispetto gli uni agli altri. Una riga mostra l'anno in corso (cioè 2011) e l'altro l'anno precedente (cioè 2010). Voglio che la linea per l'anno in corso per fermare dopo che il mese corrente è stato raggiunto. Ad esempio, se si tratta di giugno 2011. La linea per CY2011 si fermava a giugno e non mostrano lug 2011, ago 2011, set 2011, ecc, ma voglio la linea per il 2011 per visualizzare i dati di questi mesi. Ho cercato di utilizzare diverse funzioni come filtri, eccezioni, ecc, ma non ho avuto alcun successo. Qualsiasi aiuto sarebbe molto apprezzato. I8217m felice di sentire il blog si sta aiutando. Cosa you8217re cercando di fare è certamente possibile. Il trucco è quello di utilizzare la funzione if (). I8217ll fare l'ipotesi che le categorie è venuta dai discendenti dell'anno in corso. Quindi si dovrebbe avere due serie nel grafico, totale (effettivo all'interno PeriodsToDate set (..)) e totale (misura entro set PeriodsToDate (ParallelPeriod ())). Riscrivere le espressioni in modo che appare come segue: if (misura 0), allora (null) altro (totale (misura entro PeriodsToDate set (..))) e se (misura 0), allora (totale (misura entro set PeriodsToDate (ParallelPeriod ()) )) altro (null) Quelle espressioni funzionerebbe solo se la misura è 0 per i mesi futuri. Se ci sono dati, quindi sarà necessario un altro passo. Di solito cerco di evitare, se le dichiarazioni, ma funzionano bene con le misure. Don8217t provare convertendolo in una dichiarazione caso, come sarebbe costringere Cognos per eseguire la query a livello locale. Ho lo stesso problema, sto prendendo le categorie di anno precedente, dell'anno in corso tutte le categorie non vengono aggiunti nel cubo. I wan per mostrare la tabella cumilative per tutte le settimane nel corso dell'anno precedente. Nel corrente anno voglio la linea di fermarsi alla settimana precedente. Le mie espressioni sono if (Cube. Measures. Units 0) quindi nullo il resto (totali (Cube. Measures. Units all'interno set PeriodsToDate (Cube. TimePeriod. TimePeriod. Year, ParallelPeriod (Cube. TimePeriod. TimePeriod. Year, -1, CurrentMember ( Cube. TimePeriod. TimePeriod))))) per l'anno precedente, totali (Cube. Measures. Units all'interno set PeriodsToDate (Cube. TimePeriod. TimePeriod. Year, CurrentMember (Cube. TimePeriod. TimePeriod))) Ma io sono sempre Blanc sulla rapporto. Grazie in anticipo don8217t vedere alcun motivo per cui si dovrebbe essere sempre vuoto nel report. Le espressioni vanno bene. Sono entrambe serie tornando vuoto o una sola Inoltre, se there8217s i dati della settimana in corso poi la linea anno in corso continueranno a questa settimana. Il modo per aggirare questo è quello di creare un nuovo elemento di dati, chiamare settimana corrente:. ParallelPeriod (Cube. TimePeriod. TimePeriod. Year, -1, voce (coda (filtro (Cube. TimePeriod. TimePeriod. Week Cube. Measures. Unitgt0) ), 0)) e modificare la serie in corso a qualcosa come: if (count (1 entro set PeriodsToDate (Cube. TimePeriod. TimePeriod. Year CurrentMember (Cube. TimePeriod. TimePeriod.))) count gt (1 entro set PeriodsToDate ( Cube. TimePeriod. TimePeriod. Year. settimana corrente))) quindi nullo il resto (totali (Cube. Measures. Units all'interno set PeriodsToDate (Cube. TimePeriod. TimePeriod. Year, ParallelPeriod (Cube. TimePeriod. TimePeriod. Year, -1, CurrentMember (Cube. TimePeriod. TimePeriod))))) E doesn8217t sembrare there8217s un modo per inserire le immagini nella sezione commenti qui. Se questo doesn8217t risolvere il problema, inviare una nota sul forum Cognoise con screenshot e I8217ll aiutarvi lì. Grazie per la risposta Paul I8217ve fatto come lei ha ricordato sopra Non ricevo la linea per CY. Nel mio anno in corso, ho bisogno di mostrare la linea fino alla settimana precedente. se ho categorie nel mio corso fino al 4 ° settimana. Ho bisogno di mostrare la linea cumilative fino week3. Come 4a settimana ha valore 0 per la misura, 3 ° valore 4a settimana cumilative è lo stesso e sto vedendo parllel linea (dritto) dal 3 settimana a 4 ° settimana. Io sto cercando di fare 4 ° valore di settimana 0 a null, ma ancora vedo fino a 4 ° settimana. Inoltre, il mio valore settimana è venuta da prompt (week3). ma devo categorie di strutture fino week4 in CY. Non sono sicuro dove (che e-mail filo) di allegare screenshot in cognoise. Ho anche triedthe sotto espressione per CY, ho didn8217t vedere la linea per CY. se (totali (Cube. Measures. Units all'interno coda set (Cube. TimePeriod. TimePeriod. Week, 1)) 0) quindi nullo il resto (totali (Cube. Measures. Units all'interno set PeriodsToDate (Cube. TimePeriod. TimePeriod. Year, ParallelPeriod (Cube. TimePeriod. TimePeriod. Year, -1, CurrentMember (Cube. TimePeriod. TimePeriod))))) che cosa succede se si rimuove il controllo per 0 I can8217t vedo alcuna ragione per la quale wouldn8217t lavoro. Creare un nuovo argomento e inviare una copia del rapporto di XML. It8217ll essere più facile per me per risolvere il problema. Ciao Paolo, ho una domanda di ritorno mi record con una data (anche mese e anno) e da utilizzare in esecuzione-conti per contare il verificarsi di ultimi 12 mesi in ciascuno dei record che sto usando Cognos 8 amp Rapporti grazie per voi supporto si tratta di una fonte di dati relazionale potreste essere in grado di fare qualcosa di simile: corsa-count (caso in cui AddMonths Data GT (DataCorrente, -12), allora la data di fine altro nullo per Record) dimensionale è un po 'più difficile per questo ho un cubo repport based che attualmente lavorando su un prompt di dove l'utente seleziona periodo di tempo. In studio rapporto mio filtro è: Standard dati Cube. Time. Time. Month a (TimePrompt) L'utente ora vuole pianificare il report in cui lasso di tempo è da inizio anno. Ho provato a sostituire TimePrompt con YTD, ma non funziona. I dati standard Cube. Time. Time. Month a inizio anno) Quando si lavora con i dati dimensionali è necessario ricordare di dimenticare tutto quello che sai su SQL. Sì, Cognos vi permetterà di fare un filtro come 8220Standard dati Cube. Time. Time. Month a (TimePrompt) 8221 ma it8217s un modo molto povera di fare le cose. In primo luogo, se you8217re riferimento al livello di mese nel rapporto, quindi creare un calcolo query con 8220promptmany (8216TimePrompt8217,8217mun8217,8221,8217set (8216, Standard Dati Cube. Time. Time. Month8217,8217) 8217) 8221. Utilizzare che invece di dove you8217re riferimento al livello di mese. Se non you8217re riferimento ai mesi direttamente nel report, poi bastone che come una affettatrice. Ora I8217m supponendo che da inizio anno è una gerarchia diversa. Anche con la stupidità di usare un filtro per limitare i dati restituiti dalla query, you8217ll mai in grado di filtrare una gerarchia dai membri in un altro. Si potrebbe provare a visualizzarla cercando di limitare l'asse z da (x1, x2, x3). Che cosa si può fare, invece, è di riferimento la YTD come valore predefinito nella macro messaggio: promptmany (8216TimePrompt8217,8217mun8217, standard di dati Cube. Time. YTD. Month8217,8217set (8216, Standard Dati Cube. Time. Time. Month8217,8217) 8217) Se l'utente seleziona ogni mese, quindi il dato è impostato (mese1, mONTH2, Monthn). Se l'doesn8217t all'utente di selezionare qualsiasi mesi poi it8217s standard dati Cube. Time. YTD. Month. Nessun confronto tra diverse gerarchie. Sto usando conteggio parziale nella mia query per calcolare il numero di occuerence dei dati item. Mine è un campo incrociato nidificato report. I sto usando espressioni come rodaggio count (sub segmento forProduct segmento, la linea di prodotti, Famiglia prodotto, clienti Abbr, WK Data, WK Data mese, anno fiscale, Origine dati, tipo di dati)) questa espressione sta dando corretta result. But il mio problema è con il tempo di esecuzione si sta prendendo per eseguire il report. Can u per favore mi suggeriscono qualche idea migliore per ottenere this. I provato ad utilizzare conteggio, conteggio distinto ma nessuno di loro mi sta dando il risultato corretto. Ha senso che it8217s prendere un lungo periodo di tempo. That8217s un gran numero di campi you8217re usando per tagliare il rodaggio conteggio. Se il database è Oracle si potrebbe essere in grado di farla franca con l'utilizzo di funzioni di finestre, ma quelli sono difficili da lavorare in Cognos. Fa il conteggio corrente necessità di riavviare per ogni combinazione di questi 9 campi Io non sono uno sviluppatore di Cognos (BI di Microsoft, invece), ma attualmente lavoro con una squadra di ragazzi Cognos, che costruiscono rapporti in cima cubi SSAS. A causa della loro incapacità di utilizzare la funzione 8220aggregate8221 su celle vuote nei cubi SSAS mi hanno chiesto di compilare tutto lo spazio vuoto nel cubo con 0s. Naturalmente questa è una idea ridicola 8211 dopo tutti i cubi sono come 90 spazio vuoto (in genere). Purtroppo, wouldn8217t si mosse e cercano di usare cose come affermazioni totali di caso o per convertire vuoto a NULL. La prego di farmi sapere se quando si lavora con celle vuote you8217d uso aggregato e quali sarebbero le migliori pratiche in questo settore dello sviluppo Cognos. Per quanto ne sono a conoscenza che stanno utilizzando Cognos 10.1.1 se questo matters8230 Sono d'accordo che it8217s irragionevole chiedere a popolare le celle vuote con 0s. Sarebbe inutilmente gonfiare le dimensioni del cubo, e possono influire sulle prestazioni. Se è vero che nulla 1 null, la funzione di rappresentazione aggregata non deve comportarsi come tale. In Cognos si potrebbe scrivere qualcosa di simile: aggregato (misura entro set set (Member1, membro 2, gli Stati 3)). Durante la conversione di MDX che sarebbe simile (pseudocodice e semplificato da quello Cognos sarebbe in realtà generare) vi consiglio di fare un paio di test, in modo che a mano MDX restituisce i dati attesi, per poi tornare alla squadra di Cognos e scoprire what8217s succedendo. Può essere possibile che they8217re utilizzando la stessa metodologia per lavorare con il cubo come farebbero con un database relazionale. Usando filtri e funzioni relazionali invece di lavorare solo con le funzioni OLAP. In questi casi Cognos esporterà i dati necessari per la query di un set di dati locali, ed eseguire un'istruzione SQL su questo. In tal caso, null 1 sarebbe davvero nulla. 8220It può essere possibile che theyre utilizzando la stessa metodologia per lavorare con il cubo come farebbero con un database relazionale. 8221 - gt questo è esattamente ciò che stanno facendo. Nessuno ha alcuna esperienza con la segnalazione multidmensional e sono tutti abituati a lavorare con Framework Manager (pls scusa mia terminologia forse sbagliato qui). Vorrei che ho lavorato con grado ragazzi Cogos, sapendo quello che stanno facendo, in modo che io don8217t devo leggere anche se i blog Cognos, letto attraverso la documentazione di IBM, ecc, ma cosa si può do8230 mi metterò di nuovo a voi con più informazioni su come andare con questa piccola sfida. Tuttavia, si può prendere un paio di settimane dal momento che stiamo entrando nella stagione delle vacanze. cumuli Grazie per la risposta e hanno un Buon Natale e un felice anno nuovo La prego di aiutarmi con il seguente requisito: Ho un provvedimento chiamato Importo e una dimensione con valori 8216Payments8217,8217Estimate8217 etc..At presente che sto usando solo questi 2 valori nelle colonne e mesi in righe. Ho creato un calcolo denominato 8216XYZ8217 come Stima-pagamento. Ora voglio il totale di rotolamento di questo calcolo Stima pagamento Xyz gen-11 10000 5000 5000 Feb-11 7000 6000 6000 Mar-11 5000 4000 7000 Apr-11 8000 6000 9000 valori mese in righe sono in arrivo a partire dalla data dimensione: Quando sto legando per usare l'espressione nel tuo esempio sto ottenendo un errore QE-DEF-0478 coercizione non valida dal 8216level8217 a 8216hierarchy8217 Scusate se la mia domanda sembra stupida. Sono nuovo di segnalazione su cubi. Grazie in anticipo. Categorie PostsReturns recenti un valore calcolato utilizzando la funzione di aggregazione, in base al tipo di aggregazione dell'espressione. Sintassi: aggregato aggregato (espressione automatico) (espressione per tutte qualsiasi espressione) aggregato (espressione per il rapporto) Count: Restituisce il numero di elementi di dati selezionati esclusi i valori NULL. Il distinto parola chiave è disponibile per la compatibilità delle espressioni usate nelle versioni precedenti del prodotto. Sintassi: count (distinta auto espressione) count (espressione distinta per tutte qualsiasi espressione) count (espressione distinta per il rapporto) Esempio: count (nome gosalesgoretailers. Products. Product) - (op: 41, 15, 21) Conte (del tipo di prodotto per tutte le linee di prodotto) ------------ (op: 5, 4, 4) conte (tipo di prodotto per tutte le linee di prodotto) ----------- (op: 5, 4, 4) Conte (tipo di prodotto per report) ------------------- (op: 21 per tutti) massimo: Restituisce il valore massimo di elementi di dati selezionati. Il distinto parola chiave è disponibile per la compatibilità delle espressioni usate nelle versioni precedenti del prodotto. Sintassi: massimo (distinta espr auto) massima (espressione distinta per tutte qualsiasi espressione) massima (espressione distinta per il rapporto) Esempio: massimo (Quantità) -------------------- ------------ (op: 962) massimo (Quantità per tutti i tipi gosalesgoretailers. Products. Product) (op: 344,4368230) massimo (Quantità per qualsiasi nome gosalesgoretailers. Products. Product) (op : 44,78,8230) massimo (Quantità di relazione) ------------------- (op. 1.646) minima: Restituisce il valore minimo di elementi di dati selezionati. Il distinto parola chiave è disponibile per la compatibilità delle espressioni usate nelle versioni precedenti del prodotto. Sintassi: minimo (distinta espr auto) minimo (espressione distinta per tutte qualsiasi espressione) minimo (espressione distinta per il rapporto) Esempio: minimo (Quantità) -------------- (op: 43.330, 142.150 ) minimo (Quantità per ogni tipo di prodotto) ---- (op: 6, 4, 4, 8230.) minimo (Quantità per ogni tipo di prodotto) 8211 (op: 6, 4, 4.) minimo (Quantità per il rapporto) ----------------- (op: 2) Moving-media: Restituisce il valore sommando i valori a quello precedente sulla base del numericexp. Sintassi: media mobile (. Numericexpr numericexpr a exp prefiltro) in movimento alla media (numericexpr distinta prefiltro numericexpr.). per espr per il rapporto automatico Esempio: media mobile (Quantità, 2) (op: Quantità Moving media 198.676 198.676 345.096 271.886 95.552 220.324 96.246 95.889 Moving-Totale: Restituisce il valore sommando i valori a quello precedente sulla base del numericexp sintassi: movimento-totale (numericexpr numericexpr a exp pre-filtro.) in movimento-totale (distinta numericexpr numericexpr pre-filtro.) per espr per il rapporto automatico. Esempio: movimento-totale (Quantità, 3) uscita: Quantità Moving media 198.676 198.676 345.096 543.772 95.552 639.324 96.246 536.894 percentuale: restituisce la percentuale del valore totale per gli elementi dati selezionati solo usato in relazionali fonti di dati Sintassi: percentuale (numericexpr a exp pre-filtro) percentuale (distinta numericexpr prefiltro) per espr per il rapporto automatico Esempio:... percentuale (Quantità) - ( op: 16, 12, 10) percentile:. Restituisce un valore, su una scala di cento, che indica la percentuale di una distribuzione che è uguale o inferiore gli elementi dati selezionati. Sintassi: percentile (numericexpr a exp pre-filtro) percentile (distinta numericexpr prefiltro). per espr per il rapporto automatico Esempio: percentile (Quantità) -------- (op: 100, 95, 90) Quantile: Restituisce il rango di un valore per un intervallo specificato. Ritorna interi per rappresentare qualsiasi intervallo di ranghi, ad esempio 1 (massimo) a 100 (più basso). Sintassi: quantile (numericexpr, numericexpr a exp pre-filtro) quantile (numericexpr distinti, numericexpr prefiltro). per espr per il rapporto automatico Esempio: quantile (Quantità, 5) --- (op: 1, 2, 3, 4, 5) quartile: Restituisce il rango di un valore, rappresentato come interi da 1 (il più alto) a 4 (più basso ), rispetto ad un gruppo di valori. Sintassi: quartile (numericexpr a exp pre-filtro) quartile (distinta numericexpr prefiltro). per espr per il rapporto automatico Esempio: quartile (Quantità) ---------- (op: 1, 2, 3, 4) Restituisce il valore di rango di elementi di dati selezionati. Se due o più righe cravatta, poi c'è un gap nella sequenza di valori ordinati (noto anche come ranking olimpico). Sintassi: rango (espressione sortorder a exp pre-filtro) rango (distinto espr sortorder prefiltro). per espr per il rapporto automatico Esempio: rango Quantità) ----------------- (op: 1, 2, 3, 4, 8230 ..) Restituisce la media in esecuzione per riga (compreso la riga corrente) per un insieme di valori Sintassi: esecuzione alla media (numericexpr a exp prefiltro) rodaggio media (distinta numericexpr prefiltro). for expr for report auto Example: running-average Quantity) ------------ (op: Quantity Moving average 198,676 198,676 345,096 271,886 95,552 213,108 96,246 183,892 Running-Count: Returns the running count by row (including the current row) for a set of values. Syntax: running-count ( numericexpr at exp prefilter ) running-count ( distinct numericexpr prefilter ) . for expr for report auto Example: running-count(Quantity) ------- (op: 1, 2, 3, 8230 ) Returns a running difference by row, calculated as the difference between the value for the current row and the preceding row, (including the current row) for a set of values. Syntax: running-difference ( numericexpr at exp prefilter ) running-difference ( distinct numericexpr prefilter ) . for expr for report auto Example: running-difference (Quantity) --(op: null, 146420, -249,544, 8230..) Returns the running maximum by row (including the current row) for a set of values. Syntax: running-maximum ( numericexpr at exp prefilter ) running-maximum ( distinct numericexpr prefilter ) . for expr for report auto Example: running-maximum (Quantity) --------- (op: 198676, 345096) Returns the running minimum by row (including the current row) for a set of values. Syntax: running-minimum ( numericexpr at exp prefilter ) running-minimum ( distinct numericexpr prefilter ) . for expr for report auto Example: running-minimum (Quantity) --------- (op: 198676, 198676, 95552, ) Returns a running total by row (including the current row) for a set of values. Syntax: running-total ( numericexpr at exp prefilter ) running-total ( distinct numericexpr prefilter ) . for expr for report auto Example: running-total (Quantity) ----------- (op: 198676, 5437728230.) Returns the standard deviation of selected data items. The keyword distinct is available for backward compatibility of expressions used in previous versions of the product. Syntax: standard-deviation ( distinct expr auto ) standard-deviation ( distinct expr for all any expr ) standard-deviation ( distinct expr for report ) Example: standard-deviation (Quantity) ------ (op: 50.628, 69.098 8230) standard-deviation (Quantity for all Product type) -------- (op: 50.628, 69.098, 8230) standard-deviation (Quantity for any Product type) ------ (op: 50.628, 69.098 8230) standard-deviation (Quantity for report) -------------------- (op: 59.70671027) Report: Standard deviation Standard-Deviation pop: Computes the population standard deviation and returns the square root of the population variance. The keyword distinct is available for backward compatibility of expressions used in previous versions of the product. Syntax: standard-deviation-pop ( distinct expr auto ) standard-deviation-pop ( distinct expr for all any expr ) standard-deviation-pop ( distinct expr for report ) Example: standard-deviation-pop (Quantity) ------- (op: 50.62240898, 69.09035128) standard-deviation-pop (Quantity for all Product type) - (op: 50.62240898, 69.09035128) standard-deviation-pop (Quantity for any Product type) (op: 50.62240898, 69.09035128) standard-deviation-pop (Quantity for report) --- (op: 59.70601702, ) Total : Returns the total value of selected data items. The keyword distinct is available for backward compatibility of expressions used in previous versions of the product. Syntax: total ( distinct expr auto ) total ( distinct expr for all any expr ) total ( distinct expr for report ) Example: total (Quantity) --------------- (op: 198,676, 345,096) Total (Quantity for all Product type) ------- (op: 198,676, 345,096) Total (Quantity for any Product type) ----- (op: 198,676, 345,096) Total (Quantity for report) --------------- (op: 2215354) Report: Total Variance : Returns the variance of selected data items. The keyword distinct is available for backward compatibility of expressions used in previous versions of the product. Syntax: variance ( distinct expr auto ) variance ( distinct expr for all any expr ) variance ( distinct expr for report ) Example: variance (Quantity) ----- (op: 2563.244, 4774.5438230) variance(Quantity for all Product type) -------- (op: 2563.244, 4774.5438230) variance(Quantity for any Product type) ------- (op: 2563.244, 4774.5438230) variance(Quantity for report) ---------------------- (op: 3,564.89125097) Returns the population variance of a set of numbers after discarding the nulls in this set. Syntax: variance-pop ( distinct expr auto ) variance-pop ( distinct expr for all any expr ) variance-pop ( distinct expr for report ) Example: variance-pop(Quantity) ------- (op: 2,562.6282905, 4,773.47663957) variance-pop(Quantity for all Product type) ----------- (op: 2,562.6282905, 4,773.47663957) variance-pop(Quantity for any Product type) -------- (op: 2,562.6282905, 4,773.47663957) variance-pop(Quantity for report) ------ (op: 3,564.80846781) Posted by Ramana Reddy CH at 22:44I have a calculated field ab which makes sense at week level, where a is last of period metric and b is sum of the period metric. I need to find avg(ab) for the weeks that fall under a month and not endofmonth(a)sum(b) for the month. I made my ab metric with regular aggregate as calculated and then monthly average metric with regular aggregate as average, but it doesnt work. The report is a crosstab report. How can I solve this Edit: a is end on hand inventory, b is sales, ab is weeks of supply. Both a and b spread along productlocationtime dimensions. For a. Ive set its regular aggregate for time as last. Your form of expression gives me error, so, I tried average((total(a for week))(total(b for week))) which is error-free but doesnt give correct result. I used totala because it still has to sum along other dimensions except time. Any ideas I was also trying an alternative way - get the individual weeks of supply and then derive a new metric as (first week wos . fifth week wos)5. But I get a warning when I try to put a case statement as Relational query objects are being used in conjunction with Dimensionally-modeled relational objects, and the metric give garbage value. How can I apply case involving relational item in query items of measure dimension asked May 1 13 at 19:01

No comments:

Post a Comment