PowerPivot Çalışma Kitaplarında Desteklenen Veri Türleri

Bu bölümde, Excel için PowerPivot uygulamasında kullanılabilen veri türleri açıklanmakta ve verilerin Veri Çözümleme İfadeleri (DAX) formüllerinde hesaplanması veya kullanılması durumunda veri türlerinin örtük dönüştürülmesi ele alınmaktadır.

Excel İçin PowerPivot'ta Kullanılan Türleri

Aşağıdaki veri türlerinin PowerPivot formüllerinde kullanımı desteklenir. Bir Formülde veri aldığınızda veya bir değer kullandığınızda, özgün veri kaynağı farklı bir veri türü içerse bile, veriler aşağıdaki veri türlerinden birine dönüştürülür. Formüllerden kaynaklanan veriler de bu veri türlerini kullanır.

Genel olarak, bu veri türleri hesaplanmış sütunlarda doğru hesaplamalar yapılması için kullanılır ve tutarlılık açısından PowerPivot uygulamasındaki diğer veriler için de aynı kısıtlamalar geçerlidir.

Sayılar, para birimleri, tarihler ve saatler için kullanılan biçimlerin çalışma kitabını açan bilgisayarda belirtilmiş olan yerel ayarların biçimine uyması gerekir. Değerin görüntülenme biçimini denetlemek için çalışma sayfasındaki biçimlendirme seçeneklerini kullanabilirsiniz.

PowerPivot kullanıcı arabirimindeki veri türü

DAX'taki veri türü

Açıklama

Tamsayı

64-bit (8 bayt) bir tamsayı değer 1, 2

Ondalık basamağı olmayan sayılar. Tamsayılar pozitif veya negatif sayılar olabilir, ancak -9.223.372.036.854.775.808 (-2^63) ile 9.223.372.036.854.775.807 (2^63-1) birer tamsayı olmak zorundadırlar.

Ondalık Sayı

64-bit (8 bayt) bir gerçek sayı 1, 2

Gerçek sayılar ondalık basamakları olabilen sayılardır. Gerçek sayılar geniş bir yelpazedeki değerleri kapsar:

-1,79E +308 ile -2,23E -308 arasındaki negatif değerler

Sıfır

2,23E -308 ile 1,79E + 308 arasındaki pozitif değerler

Ancak, anlamlı basamak sayısı 15 ondalık basamakla sınırlıdır.

DOĞRU/YANLIŞ

Boole

Ya Doğru ya da Yanlış.

Metin

Dize

Bir Unicode karakter verisi dizesi. Metin biçiminde temsil edilen dizeler, sayılar ve tarihler olabilir.

Dize uzunluğu sınırı 268.435.456 Unicode karakteri (256 mega karakter) veya 536.870.912 bayttır.

Tarih

Tarih/saat

Kabul edilen bir tarih-saat gösterimindeki tarihler ve saatler.

Geçerli tarihler 1 Ocak 1900 sonrası tüm tarihlerdir.

Para birimi

Para birimi

Para birimi veri türü -922.337.203.685.477,5808 ile 922.337.203.685.477,5807 arasında dört sabit ondalık basamaklı değerlere olanak tanır.

Yok

Boş

Boş, SQL'deki null'ları eden ve onların yerine geçen bir DAX veri türüdür. BLANK işlevini kullanarak boş değer oluşturabilir ve ISBLANK mantıksal işlevini kullanarak boşlukları sınayabilirsiniz.

1 DAX formülleri tabloda listelenenlerden küçük olan veri türlerini desteklemez.

2 Çok büyük sayısal değerler içeren verileri almaya çalışırsanız, alma işlemi aşağıdaki hatayı vererek başarısız olabilir:

Bellek içi veritabanı hatası: '<Tablo adı>' tablosunun '<sütun adı>' sütunu desteklenmeyen '1.7976931348623157e+308' değerini içeriyor. İşlem iptal edildi.

Bu hata PowerPivot'un null için bu değeri kullanmasından kaynaklanır. Aşağıdaki listedeki değerler yukarıda bahsedilen null değeriyle ile eşanlamlıdır:

Değer

9223372036854775807

-9223372036854775808

1,7976931348623158e+308

2,2250738585072014e-308

Değeri verilerinizden kaldırmalı ve yeniden almayı denemelisiniz.

Tablo Veri Türü

Ek olarak, DAX tablo veri türünü kullanır. Bu veri türü, toplamalar ve akıllı zaman gösterimi hesaplamaları gibi birçok işlevde DAX tarafından kullanılır. Bazı işlevler bir tablo başvurusu gerektirir; diğer işlevler ise başka işlevlere giriş olarak kullanılabilen bir tablo döndürür. Giriş olarak tablo gerektiren bazı işlevlerde, tablo olarak hesaplanan bir ifade belirtebilirsiniz; bazı işlevler için bir temel tablo başvurusu gereklidir. Belirli işlevlerin gereksinimleri hakkında daha fazla bilgi için, bkz. DAX İşlev Başvurusu.

DAX Formüllerinde Örtük ve Açık Veri Türü Dönüşümü

Her DAX işlevi, girdi ve çıktı olarak kullanılan veri türleri açısından belirli gereksinimlere sahiptir. Örneğin, bazı işlevler bazı bağımsız değişkenler için tamsayı, diğerleri için de tarih gerektirirken, diğer bazı işlevler de metin veya tablo gerektirir.

Bağımsız değişken olarak belirtilen sütundaki veriler işlevin gerektirdiği veri türü ile uyumsuzsa, birçok durumda DAX hata döndürür. Ancak, mümkün olan her durumda DAX, verileri örtük olarak gereken veri türüne dönüştürmeyi dener. Örneğin:

  • Bir tarihi dize olarak yazabilirsiniz, DAX dizeyi ayrıştırır ve onu Windows tarih ve saat biçimlerinden birine dökmeyi dener.

  • TRUE örtük olarak 1 sayısına dönüştürülüp 1+1 işlemi uygulandığından, TRUE + 1 eklediğinizde 2 sonucunu alabilirsiniz.

  • Değerleri iki sütuna eklediğinizde bir değeri metin olarak ("12") diğerini de sayı olarak (12) göstermişseniz, DAX dizeyi örtük olarak sayıya dönüştürür ve ardından sayısal sonuç için toplama işlemi yapar. Şu ifade 44 döndürür: = "22" + 22

  • İki sayıyı birleştirmeyi denediğinizde, PowerPivot eklentisi bunları dize olarak gösterip sonra birleştirir. Şu ifade "1234" döndürür: = 12 & 34

Aşağıdaki tabloda, formüllerde gerçekleştirilen örtük veri türü dönüşümleri özetlenmektedir. Genel olarak, PowerPivot Microsoft Excel gibi davranır ve belirtilen işlem için gerektiğinde, mümkün olan her yerde örtük dönüşümler gerçekleştirir.

Örtük Veri Dönüşümleri Tablosu

Yapılan dönüştürme işleminin türü, istenen işlemi gerçekleştirmeden önce gerek duyduğu değerleri döken işleç tarafından belirlenir. Bu tablolarda işleçler listelenmekte ve kesişen satırdaki veri türü ile eşlenmiş olan sütundaki her veri türü üzerinde gerçekleştirilen dönüştürme işlemi gösterilmektedir.

[!NOT]

Metin veri türleri bu tablolara eklenmemiştir. Bir sayı metin biçiminde gösterildiğinde, bazı durumlarda PowerPivot sayının türünü belirlemeyi ve onu sayı olarak göstermeyi dener.

Toplama (+)

İşleç (+)

TAMSAYI

PARA BİRİMİ

GERÇEK

Tarih/saat

TAMSAYI

TAMSAYI

PARA BİRİMİ

GERÇEK

Tarih/saat

PARA BİRİMİ

PARA BİRİMİ

PARA BİRİMİ

GERÇEK

Tarih/saat

GERÇEK

GERÇEK

GERÇEK

GERÇEK

Tarih/saat

Tarih/saat

Tarih/saat

Tarih/saat

Tarih/saat

Tarih/saat

Örneğin, bir toplama işleminde para birimi verisiyle birlikte bir gerçek sayı kullanılırsa, her iki değer de GERÇEK'e dönüştürülür ve sonuç GERÇEK olarak verilir.

Çıkarma (-)

Aşağıdaki tabloda, satır üstbilgisi eksilen (sol taraf) ve sütun üstbilgisi çıkandır (sağ taraf).

İşleç (-)

TAMSAYI

PARA BİRİMİ

GERÇEK

Tarih/saat

TAMSAYI

TAMSAYI

PARA BİRİMİ

GERÇEK

GERÇEK

PARA BİRİMİ

PARA BİRİMİ

PARA BİRİMİ

GERÇEK

GERÇEK

GERÇEK

GERÇEK

GERÇEK

GERÇEK

GERÇEK

Tarih/saat

Tarih/saat

Tarih/saat

Tarih/saat

Tarih/saat

Örneğin, bir çıkarma işleminde herhangi bir veri türüyle birlikte bir tarih kullanılırsa, her iki değer de tarihlere dönüştürülür ve dönüş değeri de bir tarih olur.

[!NOT]

PowerPivot - (negatif) birli işlecini de destekler, ancak bu işleç işlenenin veri türünü değiştirmez.

Çarpma (*)

İşleç (*)

TAMSAYI

PARA BİRİMİ

GERÇEK

Tarih/saat

TAMSAYI

TAMSAYI

PARA BİRİMİ

GERÇEK

TAMSAYI

PARA BİRİMİ

PARA BİRİMİ

GERÇEK

PARA BİRİMİ

PARA BİRİMİ

GERÇEK

GERÇEK

PARA BİRİMİ

GERÇEK

GERÇEK

Örneğin, bir çarpma işleminde bir tamsayı gerçek sayıyla birleştirilirse, iki sayı da gerçek sayıya dönüştürülür ve dönüş değeri de GERÇEK olur.

Bölme (/)

Aşağıdaki tabloda, satır üstbilgisi pay (sol taraf) ve sütun üstbilgisi paydadır (sağ taraf).

İşleç (/)

(Satır/Sütun)

TAMSAYI

PARA BİRİMİ

GERÇEK

Tarih/saat

TAMSAYI

GERÇEK

PARA BİRİMİ

GERÇEK

GERÇEK

PARA BİRİMİ

PARA BİRİMİ

GERÇEK

PARA BİRİMİ

GERÇEK

GERÇEK

GERÇEK

GERÇEK

GERÇEK

GERÇEK

Tarih/saat

GERÇEK

GERÇEK

GERÇEK

GERÇEK

Örneğin, bir bölme işleminde bir tamsayı para birimi değeriyle birleştirilirse, iki değer de gerçek sayıya dönüştürülür ve sonuç da bir gerçek sayı olur.

Karşılaştırma işleçleri

Karşılaştırma ifadelerinde Boole değerleri dize değerlerinden büyük ve dize değerleri sayı ve tarih/saat değerlerinden büyük kabul edilir; sayıların ve tarih/saat değerlerinin aynı dereceye sahip olduğu kabul edilir. Boole veya dize değerleri için herhangi bir içsel dönüştürme gerçekleştirilmez; BLANK veya boş değeri karşılaştırılan diğer değerin veri türüne bağlı olarak 0/""/false değerine dönüştürülür.

Aşağıdaki DAX ifadeleri bu davranışı göstermektedir:

=IF(FALSE()>"true","Expression is true", "Expression is false") ifadesi döndürür "Expression is true"

=IF("12">12,"Expression is true", "Expression is false") ifadesi döndürür "Expression is true"

=IF("12"=12,"Expression is true", "Expression is false") ifadesi döndürür "Expression is false"

Sayısal veya tarih/saat türleri için aşağıdaki tabloda açıklandığı gibi içsel olarak dönüştürmeler gerçekleştirilir:

Karşılaştırma İşleci

TAMSAYI

PARA BİRİMİ

GERÇEK

Tarih/saat

TAMSAYI

TAMSAYI

PARA BİRİMİ

GERÇEK

GERÇEK

PARA BİRİMİ

PARA BİRİMİ

PARA BİRİMİ

GERÇEK

GERÇEK

GERÇEK

GERÇEK

GERÇEK

GERÇEK

GERÇEK

Tarih/saat

GERÇEK

GERÇEK

GERÇEK

Tarih/saat

Boşlukların, Boş Dizelerin ve Sıfır Değerlerinin İşlenmesi

DAX'ın sıfır değerlerini, null'ları ve boş dizeleri işleme biçimi hem Microsoft Excel'den hem de SQL Server'dan farklıdır. Bu bölümde farklar ve bu veri türlerinin nasıl işlendiği açıklanmaktadır.

PowerPivot'de boş değerlerin, boş hücrelerin veya eksik değerlerin tümünün hep aynı yeni değer türüyle, yani BLANK ile gösterildiğinin unutulmaması önemlidir. Toplama veya birleştirme gibi işlemlerde boş değerlerin nasıl işlendiği kullanılan işleve bağlıdır. BLANK işlevini kullanarak da boş değerler oluşturabilir veya ISBLANK işlevini kullanarak boşlukları sınayabilirsiniz. Veritabanı null'ları PowerPivot çalışma kitabında desteklenmez ve null değer içeren sütuna DAX formülünde başvurulduğunda, null'lar örtük olarak boşluklara dönüştürülür.

Boşlukları, Null'ları ve Boş Dizeleri Tanımlama

Aşağıdaki tabloda, DAX ile Microsoft Excel'in boşlukları kullanma biçimlerindeki farklar özetlenmektedir.

Expression

DAX

Excel

BLANK + BLANK

BLANK

0 (sıfır)

BLANK +5

5

5

BLANK * 5

BLANK

0 (sıfır)

5/BLANK

Sonsuz

Hata

0/BLANK

NaN

Hata

BLANK/BLANK

BLANK

Hata

FALSE VEYA BLANK

FALSE

FALSE

FALSE VE BLANK

FALSE

FALSE

TRUE VEYA BLANK

TRUE

TRUE

TRUE VE BLANK

FALSE

TRUE

BLANK VEYA BLANK

BLANK

Hata

BLANK VE BLANK

BLANK

Hata

Belirli bir işlevin veya işlecin boşlukları nasıl kullandığıyla ilgili ayrıntılar için, DAX İşlev Başvurusu bölümünde, her bir DAX işlevine yönelik ilgili konulara bakın.

Ayrıca bkz.

Kavramlar

Veri Çözümleme İfadelerine (DAX) Genel Bakış