EVALUATEANDLOG
Şunlar için geçerlidir: Hesaplanmış sütun Hesaplanan tablo Ölçü Görseli hesaplaması
İlk bağımsız değişkenin değerini döndürür ve bir DAX Değerlendirme Günlüğü profil oluşturucu olayında günlüğe kaydeder. Bu işlev yalnızca Power BI Desktop'ta tamamen işlevseldir. Diğer ortamlarda basit bir geçiş işlevi görür.
Sözdizimi
EVALUATEANDLOG(<Value>, [Label], [MaxRows])
Parametreler
Süre | Tanım |
---|---|
Değer | Değerlendirilecek ve günlüğe kaydedilecek herhangi bir skaler ifade veya tablo ifadesi. |
Etiket | (İsteğe bağlı) İşlev çağrısının bir örneğini kolayca tanımlamak için kullanılabilecek DAX Değerlendirme Günlüğü olayının hem json metnine hem de Label sütununa dahil edilen sabit bir dize. |
MaxRows | (İsteğe bağlı) İlk bağımsız değişken bir tablo ifadesi olduğunda, DAX Değerlendirme Günlüğü olayının json metnindeki en fazla satır sayısı. Varsayılan değer 10'dur. |
Dönüş değeri
İlk bağımsız değişkenin değeri.
DAX Değerlendirme Günlüğü profil oluşturucu olayında günlüğe kaydedilen JSON yapısı şunları içerir:
- "ifade", ilk bağımsız değişkenin metin sürümüdür.
- "label", ifadede belirtildiğinde Label parametresidir.
- "inputs", değerlendirme bağlamındaki ilk bağımsız değişkenin değerlerini etkileyen sütunların listesidir.
- "outputs", ilk bağımsız değişken bir skaler ifade olduğunda tek bir sütunun [Değer] listesi ve ilk bağımsız değişken tablo ifadesi olduğunda çıkış sütunlarının listesidir.
- "data", ilk bağımsız değişken bir skaler ifade olduğunda giriş değerlerinin ve çıkış değerlerinin listesi, ilk bağımsız değişken bir tablo ifadesi olduğunda ise giriş değerlerinin ve buna karşılık gelen çıkış satırlarının listesidir.
- "rowCount", ilk bağımsız değişken bir tablo ifadesi olduğunda satır sayısıdır. Json çıkışındaki satır sayısı MaxRows parametresi tarafından kesilse de rowCount, kesilmeden gerçek satır sayısıdır.
Açıklamalar
İzleme olayları SQL Server Profiler ve açık kaynak DAX Hata Ayıklama Çıktısı aracı kullanılarak yakalanabilir.
Bu işlev bir DAX ifadesindeki neredeyse tüm alt ifadelerle kullanılabilir ve ifadenin tamamı yine geçerli olur.
İlk bağımsız değişken tek bir sorguda birden çok kez değerlendirildiğinde, işlev hem giriş değerlerini hem de ilgili çıkış değerlerini içeren tek bir DAX Değerlendirme Günlüğü olayı oluşturur.
Etiket parametresi belirtildiğinde değeri hem json çıkışında hem de DAX Değerlendirme Günlüğü olayının Label sütununda döndürülür.
İlk bağımsız değişken bir tablo ifadesiyse, DAX Değerlendirme Günlüğü olayında yalnızca en üstteki MaxRows satırları gösterilir.
Bazı durumlarda, iyileştirmeler nedeniyle bu işlev yürütülmemektedir.
DAX Değerlendirme Günlüğü olayı bir milyon karakterden büyükse, doğru json yapısını korumak için kesilir.
Örnek 1
Aşağıdaki DAX sorgusu:
evaluate
SUMMARIZE(
EVALUATEANDLOG(FILTER(Sales, [ProductKey] = 528)),
Sales[SalesTerritoryKey],
"sum",
sum(Sales[Sales Amount])
)
Aşağıdaki DAX Değerlendirme Günlüğü olayını döndürür:
{
"expression": "FILTER(Sales, [ProductKey] = 528)",
"inputs": [],
"outputs": ["'Sales'[SalesOrderLineKey]", "'Sales'[ResellerKey]", "'Sales'[CustomerKey]", "'Sales'[ProductKey]", "'Sales'[OrderDateKey]", "'Sales'[DueDateKey]", "'Sales'[ShipDateKey]", "'Sales'[SalesTerritoryKey]", "'Sales'[Order Quantity]", "'Sales'[Unit Price]", "'Sales'[Extended Amount]", "'Sales'[Product Standard Cost]", "'Sales'[Total Product Cost]", "'Sales'[Sales Amount]", "'Sales'[Unit Price Discount Pct]"],
"data": [
{
"input": [],
"rowCount": 3095,
"output": [
[52174001, -1, 23785, 528, 20190707, 20190717, 20190714, 1, 1, 4.99, 4.99, 1.8663, 1.8663, 4.99, 0.0],
[52173001, -1, 26278, 528, 20190707, 20190717, 20190714, 1, 1, 4.99, 4.99, 1.8663, 1.8663, 4.99, 0.0],
[52082001, -1, 23831, 528, 20190705, 20190715, 20190712, 1, 1, 4.99, 4.99, 1.8663, 1.8663, 4.99, 0.0],
[52054002, -1, 11207, 528, 20190704, 20190714, 20190711, 1, 1, 4.99, 4.99, 1.8663, 1.8663, 4.99, 0.0],
[52036001, -1, 25337, 528, 20190704, 20190714, 20190711, 1, 1, 4.99, 4.99, 1.8663, 1.8663, 4.99, 0.0],
[51939002, -1, 23670, 528, 20190702, 20190712, 20190709, 1, 1, 4.99, 4.99, 1.8663, 1.8663, 4.99, 0.0],
[51911002, -1, 11746, 528, 20190701, 20190711, 20190708, 1, 1, 4.99, 4.99, 1.8663, 1.8663, 4.99, 0.0],
[51379003, -1, 13745, 528, 20190612, 20190622, 20190619, 1, 1, 4.99, 4.99, 1.8663, 1.8663, 4.99, 0.0],
[51264002, -1, 11282, 528, 20190605, 20190615, 20190612, 1, 1, 4.99, 4.99, 1.8663, 1.8663, 4.99, 0.0],
[51184003, -1, 11263, 528, 20190531, 20190610, 20190607, 1, 1, 4.99, 4.99, 1.8663, 1.8663, 4.99, 0.0]
]
}
]
}
Örnek 2
Skaler bağımsız değişkeni ve değişen öznitelikleri olan aşağıdaki DAX sorgusu:
evaluate
SELECTCOLUMNS(
TOPN(5, Customer),
[Customer],
"Customer",
EVALUATEANDLOG([Customer] & ", " & [Country-Region], "customerLog")
)
Aşağıdaki DAX Değerlendirme Günlüğü olayını döndürür:
{
"expression": "[Customer] & \", \" & [Country-Region]",
"label": "customerLog",
"inputs": ["'Customer'[Customer]", "'Customer'[Country-Region]"],
"data": [
{
"input": ["Russell Xie", "United States"],
"output": "Russell Xie, United States"
},
{
"input": ["Savannah Baker", "United States"],
"output": "Savannah Baker, United States"
},
{
"input": ["Maurice Tang", "United States"],
"output": "Maurice Tang, United States"
},
{
"input": ["Emily Wood", "United States"],
"output": "Emily Wood, United States"
},
{
"input": ["Meghan Hernandez", "United States"],
"output": "Meghan Hernandez, United States"
}
]
}