Bir özellik niteliğine dayalı olarak aslında gerçek tablodaki belirli bir kayıt alt kümesini özetleyen hesaplanmış bir ölçü oluşturmak istiyorum.Boyut Niteliklerine Göre MDX'te Hesaplanmış Bir Ölçümü nasıl tanımlarım?
Verilen:
Boyut
- tarihi
- LedgerLineItem {Şarj, Ödeme, yaz-Off, Copay, Kredi}
önlemler
- LedgerAmount
İlişkiler
* LedgerLineItem
Ben LedgerLineItem.Type tarafından LedgerAmount yıkmak ben kolayca vb, suçlandıkları ödenir görmek ne kadar kredi yapabilirsiniz FactLedger
bir dejenere boyuttur ancak ben ne zaman değil LedgerLineItem.Type tarafından parçalara ayırın Kredi, ödenen, kredi, vb. pivot tabloya kolayca eklenemiyorum. Yalnızca belirli türde (veya birden fazla türde) defter bilgilerini içeren ayrı hesaplanmış önlemler oluşturmak istiyorum.istenen çıktı bir örnek
olacaktır: Ben hesaplanan ölçü birkaç yol oluşturmak için çalıştık ve her biri bazı durumlarda diğerlerinde çalışır| Year | Charged | Total Paid | Amount - Ledger |
| 2008 | $1000 | $600 | -$400 |
| 2009 | $2000 | $1500 | -$500 |
| Total | $3000 | $2100 | -$900 |
. Şimdi herkes ETL'de bunu yapmadan önce, bunu ETL'de yapmıştım ve gayet iyi çalışıyor. MDX'i daha iyi anlamayı öğrenmenin bir parçası olarak yapmaya çalıştığım şey, şu ana kadar MDX'te ETL'de yaptığım şeyi çoğaltmanın nasıl olduğunu anlayamıyorum.
Yaptığım iki deneme ve onlarla ilgili problemler. Bu, yalnızca defter tipi pivot tabloda olduğunda çalışır. bu durumda aynıdır rağmen (defter girişlerinin doğru miktarda döner [tutarı - defterin] ama tipini kaldırmak ve sadece bilinmeyen döndüren tüm defter girişlerinin toplamı elde etmeye çalışmak zaman
CREATE MEMBER CURRENTCUBE.[Measures].[Received Payment]
AS CASE WHEN ([Ledger].[Type].currentMember = [Ledger].[Type].&[Credit])
OR ([Ledger].[Type].currentMember = [Ledger].[Type].&[Paid])
OR ([Ledger].[Type].currentMember = [Ledger].[Type].&[Held Money: Copay])
THEN [Measures].[Amount - ledger]
ELSE 0
END
, FORMAT_STRING = "Currency"
, VISIBLE = 1
, ASSOCIATED_MEASURE_GROUP = 'Ledger' ;
. Bu, yalnızca kağıt türü pivot tablosunda olmadığında çalışır. Her zaman, yalnızca kredinin altındaki kredi kısmını, ödenen kısım, ödenmiş tutarı görmeyi beklediğim gibi, türüne göre dilimleme yaparken yanlış olan toplam ödeme tutarını döndürür. ödeme altından $ 0, vb
CREATE MEMBER CURRENTCUBE.[Measures].[Received Payment]
AS sum({([Ledger].[Type].&[Credit]), ([Ledger].[Type].&[Paid])
, ([Ledger].[Type].&[Held Money: Copay])}
, [Measures].[Amount - Ledger])
, FORMAT_STRING = "Currency"
, VISIBLE = 1
, ASSOCIATED_MEASURE_GROUP = 'Ledger' ;
bu bakmaksızın Ledger.Type dahil olup olmadığı doğru numaralarını dönmelerini sağlamanın bir yolu var mı pivot tablomda değil mi?
Siz sallanıyorsunuz! Bu tam olarak ne arıyordum. –