Formül sütunlarıyla çalışma
Formül sütunları, bir Microsoft Dataverse tablosunda hesaplanan değeri gösteren sütunlardır. Formüller, güçlü ancak kullanıcı dostu bir programlama dili olan Power Fx'i kullanır. Dataverse formül sütununda, Microsoft Excel'de formül oluşturduğunuz yöntemle formül oluşturun. Siz yazarken IntelliSense, işlev ve söz dizimi önerilerinde bulunur, hatta hataları düzeltmenize yardımcı olur.
Sütuna formül ekleme
https://make.powerapps.com adresinde Power Apps'te oturum açın.
Tablolar'ı seçin, ardından formül sütunu eklemek istediğiniz tabloyu seçin. Öğe yan panel bölmesinde yoksa ...Diğer'i ve ardından istediğiniz öğeyi seçin.
Sütunlar alanını seçin ve ardından Yeni sütun'u seçin.
Aşağıdaki bilgileri girin:
- Sütun için Görünen ad.
- İsteğe bağlı olarak, sütun için bir Açıklama girin.
Veri türü olarak fx Formül seçeneğini belirleyin.
Formülü yazın veya formül önerileri kullanın:
Formül kutusuna Power Fx formülü girin. Daha fazla bilgi: Formül yazma
- Ek özellikler seçin:
- Bu sütunun görünümlerde, grafiklerde, panolarda ve Gelişmiş Bul'da kullanılabilir olmasını istiyorsanız Aranabilir'i seçin.
- Gelişmiş seçenekler:
- Formül sonucu ondalık bir değerse, Gelişmiş seçenekler'i genişleterek virgülden sonra dahil edilecek basamak sayısına 0 ve 10 arasında bir değer verin. Varsayılan değer 2'dür.
- Kaydet'i seçin.
Formül yazın
Aşağıdaki örnekte, Toplam fiyat adı verilen bir formül sütunu oluşturulmaktadır. Birim sayısı sütunu tamsayı veri türüdür. Fiyat sütunu ondalık bir veri türüdür.
Formül sütunu, Fiyat'ın Birim sayısı ile çarpımından elde edilen sonucu gösterir.
Girdiğiniz formül, sütun türünü belirler. Sütun oluşturulduktan sonra, sütunun türünü değiştiremezsiniz. Diğer bir ifadeyle, sütunu oluşturduktan sonra, sütun türünü değiştirmediğiniz sürece formülü değiştirebilirsiniz.
Örneğin, fiyat * iskonto formülü sayı türünde bir sütun oluşturur. Bir fiyat * iskonto formülünü, fiyat * (iskonto + %10) olarak değiştirebilirsiniz çünkü bu işlem sonucunda sütun türü değişmez. Ancak fiyat * iskonto formülünü Metin(fiyat * iskonto) olarak değiştiremezsiniz çünkü bu işlem için sütun türünün dize olarak değiştirilmesi gerekir.
Formül önerileri alma (önizleme)
[Bu konu yayın öncesi belgesine dahildir ve değiştirilebilir.]
Formülün ne yapmasını istediğinizi açıkladığınızda yapay zeka tarafından oluşturulan sonuçlar elde edebilirsiniz. Formül önerileri, GPT tabanlı yapay zeka modelini kullanarak bir Power Fx formülü yorumlamak ve önermek için doğal dil girişinizi kabul eder.
Önemli
Bu, yalnızca ABD bölgelerinde kullanılabilen bir önizleme özelliğidir.
Önizleme özellikleri üretimde kullanım amacıyla çıkarılmaz ve işlevleri sınırlıdır. Bu özellikler, müşterilerin önceden erişmesi ve geri bildirim sağlaması amacıyla resmi sürümden önce kullanıma sunulur.
Şu anda, tek bir tabloya başvuran formül önerileri desteklenmektedir. İlgili bir tablodaki bir sütuna başvuran formül önerileri desteklenmemektedir.
Önkoşullar
Bu özelliği etkinleştirmek için Formül sütunları için yapay zeka önerileri ortam ayarını etkinleştirmeniz gerekir. Daha fazla bilgi: Formül sütunları için AI önerileri
Doğal dil girişi örneği
Dereceleri firmaya göre gösteren bir Müşteri derecelendirmeleri sütunu olduğunu varsayalım.
Formül önerileri al kutusuna, formülü doğal dilinizi kullanarak girin. Örneğin: Derecelendirme sütunundaki değer 5'e eşit veya 5'ten büyükse İyi; bu değer 5'ten küçükse Ortalama olarak belirt. Değer boşsa veya sıfırsa, Kötü olarak görüntüle. Bu açıklamanın ardından ok düğmesini (enter) seçin.
Ardından Önerilen Formül'ü kopyalayın.
Bu formülü Formül yazın kutusuna yapıştırın. Kaydet'i seçin.
Yapıştırılan formül şu şekilde görünür:
Switch(
ThisRecord.'Customer Rating',
Blank(), "Bad",
0, "Bad",
1, "Average",
2, "Average",
3, "Average",
4, "Average",
5, "Good",
6, "Good",
7, "Good",
8, "Good",
9, "Good",
10, "Good"
)
Hesaplanan Derecelendirme Açıklaması formülü sütununu inceleyin. Bu sütun şöyle görünür:
Sorumlu Yapay Zeka
Sorumlu yapay zeka hakkında bilgi için aşağıdaki kaynaklara gidin:
- Konuşma yoluyla uygulama ve tablo oluşturma hakkında SSS
- Power Apps'te yapay zekayı sorumlu şekilde kullanma ile ilgili SSS
İşleçler
Aşağıdaki işleçleri bir formül sütununda kullanabilirsiniz:
+, -, *, /, %, in, exactin, &
Daha fazla bilgi için Power Apps'te işleçler makalesine gidin.
Veri türleri
Aşağıdaki veri türlerini bir formül sütununda görüntüleyebilirsiniz:
- Metin
- Ondalık sayı
- Evet/Hayır (boole) seçimi
- Datetime
- Tam Sayı
Para birimi ve seçim (eski seçenek kümeleri) veri türleri şu anda desteklenmemektedir.
İşlev türleri
Aşağıdaki işlev türlerini, bir formül sütununda görüntülenebilir:
- Ondalık
- Dize
- Boole
- Seçenek Kümesi
- Tarih Saat (TZI)
- Tarih Saat (Kullanıcı yerel ayarı) (diğer kullanıcı yerel ayar değerleriyle ve DateAdd ve DateDiff işleviyle karşılaştırmalarla sınırlı)
- Tarih Saat (Yalnızca tarih) (diğer yalnızca tarih değerleriyle, DateAdd ve DateDiff işleviyle karşılaştırmalarla sınırlı)
- Currency
- Tamsayı, ondalığa yükseltilir
İşlevler
Aşağıdaki skalar işlevleri, bir formül sütununda kullanabilirsiniz:
Value *
Text *
Ondalık *
* Text ve Value işlevleri yalnızca ondalık ayırıcının bulunmadığı tamsayılarla çalışır. Ondalık ayırıcı, yerel ayarlara göre değişiklik gösterir. Formül sütunları yerel ayar bilgisi olmadan değerlendirildiğinden, ondalık ayırıcısını uygun şekilde yorumlamak veya oluşturmak için bir yol yoktur.
* StartOfWeek bağımsız değişkeni, formül sütunlarındaki WeekNum ve Weekday işlevleri için desteklenmez.
İşlev örneği
Description | Örnek |
---|---|
Bir tarih değeri alın. | DateAdd(UTCNow(),-1,TimeUnit.Years) |
Ondalık formül sütunu oluşturma
Ondalık sayı döndüren bir formül sütunu oluşturun.
- Bir sütun oluştururken aşağıdaki bilgileri girin:
- Sütun için Görünen ad.
- İsteğe bağlı olarak, sütun için bir Açıklama girin.
- Veri türü olarak fx Formül seçeneğini belirleyin.
- Formül çubuğuna sayısal bir değer döndüren bir formül girin. Bu örnek, Toplam Tutar adlı bir formül sütunu oluşturur. Birim Fiyatı sütunu ondalık veri türündedir.
- Gelişmiş seçenekler'i genişletin, Formül veri türü olarak Ondalık'ı seçin ve ardından gerekli ondalık basamak sayısını ayarlayın.
- Kaydet'i seçin.
Tam sayı formülü sütunu oluşturma
Tam sayı döndüren bir formül sütunu oluşturun.
- Bir sütun oluştururken aşağıdaki bilgileri girin:
- Sütun için Görünen ad.
- İsteğe bağlı olarak, sütun için bir Açıklama girin.
- Veri türü olarak fx Formül seçeneğini belirleyin.
- Formül çubuğuna sayısal bir değer döndüren bir formül girin. Bu örnek, Birim Sayısı adlı bir formül sütunu oluşturur. Toplam Fiyat ve Birim Fiyatı sütunları ondalık veri türündedir.
- Gelişmiş seçenekler'i genişletin ve Formül veri türü olarak Tam sayı'yı seçin ve tam sayı sütunu için gerekli biçimi ayarlayın.
- Kaydet'i seçin.
Yönergeler ve sınırlamalar
Bu bölümde, Dataverse'teki formül sütunlarıyla ilgili yönergeler ve bilinen sınırlamalar açıklanmaktadır.
Para birimi alanları için kullanım doğrulamaları
- Formül sütunları (örneğin bu örnekte olduğu gibi), formülde ilgili tablo para birimi sütununu kullanmayı desteklemez.
- Para birimi sütunlarının ve döviz kurunun formülde doğrudan kullanımı şu anda desteklenmiyor. Para birimi ve döviz kuru sütunlarının kullanımı,
Decimal
işlevi (ör.Decimal(currency column)
veyaDecimal(exchange rate)
) aracılığıyla sağlanır.Decimal
işlevi çıkışın kabul edilen aralık içinde olmasını sağlar. Para birimi veya döviz kuru sütun değeri kabul edilen aralığı aşarsa, formül boş değer döndürür. - Temel para birimi sütunları, raporlama amacıyla kullanılan sistem sütunları oldukları için formül sütunu ifadelerinde desteklenmez. Benzer bir sonuç elde etmek isterseniz,
CurrencyField_Base = (CurrencyField / ExchangeRate)
gibi bir döviz kuru sütun bileşimiyle birlikte para birimi sütun türü kullanabilirsiniz.
Tarih saat sütunları için kullanım doğrulamaları
- Tarih saati formül sütunlarının davranışı yalnızca başka bir formül sütununda kullanılmadıklarında güncelleştirilebilir.
- Tarih saat formül sütunlarında
DateDiff
işlevini kullanırken aşağıdakileri sağladığınızdan emin olun:- Kullanıcının saat diliminde davranışına ait sütun,
DateTime(TZI)/DateOnly
davranış sütunuyla karşılaştırılamaz veya birlikte kullanılamaz. - Kullanıcının saat diliminde davranışına ait sütunlar, kullanıcının saat diliminde davranışına ait başka bir sütunla karşılaştırılamaz veya birlikte kullanılamaz.
DateTime(TZI)
davranış sütunlarıDateDiff
işlevlerinde başka birDateTime(TZI)/DateOnly
davranış sütunuyla karşılaştırılabilir veya birlikte kullanılabilir.DateOnly
davranış sütunları DateDiff işlevinde başka birDateTime(TZI)/DateOnly
davranış sütunuyla karşılaştırılabilir veya birlikte kullanılabilir.
- Kullanıcının saat diliminde davranışına ait sütun,
- Tarih saat sütunları ve tarih saat işlevleri olan
UTCNow()
,Now()
dize işlevlerine parametre olarak aktarılamaz.
Toplama alanlarında formül sütunu kullanımı
- Basit formül sütunu, formülün aynı kayıttaki sütunları kullandığı veya tam kodlanmış değerler kullandığı yerdir. Toplama sütunları için formül sütunları, bu örnek toplama sütunu gibi basit formül sütunları olmalıdır.
- Zamana bağlı
UTCNow()
veUTCToday()
işlevlerine bağımlı olan ve toplama alanında kullanılamayan bir formül sütunu.
Power Fx metin işlevi önerileri
Formül sütunları Sayı türünde tek bir bağımsız değişkende
Text()
işlevlerini desteklemez. Sayı; tam sayı, ondalık veya para birimi olabilir.Formül sütunları aşağıdaki yapılandırmalarda sayıların kullanılmasını desteklemez:
- Dize işlevlerinde. Bunlar, bir metin bağımsız değişkeninin beklendiği her yere yerleştirilen dize işlevleridir: Upper, Lower, Left, Right, Concatenate, Mid, Len, StartsWith, EndsWith, TrimEnds, Trim, Substitute ve Replace.
12 & "foo"
veya12 & 34
ya da"foo" & 12
gibi örtük formüllerde.- Sayıdan metne dahili zorlaması desteklenmez. Bir sayıyı metne dönüştürmek için
Text(Number, Format)
kullanılmasını öneririz.Text
işlevinde birString
bağımsız değişkeni geçirildiğindeFormat
bağımsız değişkeni desteklenmez. - Bir sayıyı metne dönüştürmek ve buna bir dize eklemek için
Text
işlevinin kullanıldığı bir örnek aşağıda verilmiştir:
Concatenate(Text(123,"#"),"ab") Text(123,"#") & "foo"
"." ve "," gibi yerel ayara özgü biçimlendirme belirteçleri formül sütunlarında desteklenmez.
Formül sütunlarında aralık doğrulamaları
- Formül sütununun Minimum değer veya Maksimum değer özelliklerini ayarlayamazsınız.
- Tüm dahili hesaplamalar, ondalık türündeki formül sütunları için Dataverse aralığında bulunmalıdır (-100000000000 - 100000000000).
- Formül çubuğuna girilen sabit kodlu değişmez değer Dataverse aralığı içinde bulunmalıdır.
- Null değerine sahip bir sayısal sütun varsa, ara işlemde 0 olarak kabul edilir. Örneğin,
a+b+c and If a = null, b=2, c=3
ise formül sütunu,0 + 2 + 3 = 5
sonucunu verir.- Hesaplanan sütunlar
null + 2 + 3 = null
sonucunu verdiğinden bu davranış, bu örnekteki hesaplanan sütunlardan farklıdır.
- Hesaplanan sütunlar
Formül sütunlarında genel doğrulamalar
- Formül sütunları diğer formül sütunlarına başvurabilir ancak bir formül sütunu kendisine başvuramaz.
- Formül sütunları döngüsel zincirleri desteklemez (örneğin
F1 = F2 + 10, F2 = F1 * 2
). - Formül sütunlarında maksimum formül ifadesi uzunluğu 1000 karakterdir.
- Formül sütunlarında izin verilen maksimum derinlik 10'dur. Derinlik, diğer formüllere veya toplama sütunlarına başvuran formül sütunları zinciri olarak tanımlanır.
- Örneğin,
table E1, F1 = 1*2, table E2, F2 - E1*2
. Bu örnekte, F2'nin derinliği 1'dir.
- Örneğin,
- Model temelli uygulamalarda sıralama devre dışı bırakılır:
- İlgili tablonun bir sütununu içeren bir formül sütunu.
- Mantıksal bir sütun içeren bir formül sütunu (örneğin, adres sütunu).
- Başka bir hesaplanmış veya formül sütunu içeren bir formül sütunu.
- Zamana bağlı işlev
UTCNow()
kullanan bir formül sütunu.
- Dil, Süre, Saat Dilimi biçimindeki Tam Sayı türündeki sütunlar formül sütunlarında desteklenmez.
- E-posta, Metin Alanı, Şirket Borsa Kodu Simgesi, URL biçimindeki Dize türündeki sütunlar formül sütunlarında desteklenmez.
- Uygulama Mobile Offline modundayken formül sütunları değer göstermez.
- Formül sütunlarında iş akışları veya eklentiler tetikleyemezsiniz.
- Hesaplanan sütunların formül sütunlarında kullanılmasını veya bunun tam tersini önermeyiz.
- Formül sütunlarında yinelenen öğe algılaması kuralları tetiklenmez.
Now
işlevi formül sütunlarıyla kullanılabilir.Now()
, kullanıcının saat diliminde davranışına veUTCNow()
, saat diliminden bağımsız davranışına sahiptir.- Ondalık sütunları için duyarlılık özelliğini ayarlayabilirsiniz.
- Varsayılan formül veri türü değeri, sayısal değer döndüren formüller için Ondalık olarak ayarlanır.
- Tam sayı formülü sütununun biçiminin güncelleştirilmesi desteklenmez.
Şu anda desteklenmeyen Power Fx işlevleri
- Power
- Sqrt
- Exp
- Ln
- ^ (işleç)
Oluşturulamayan veri türlerinin formül sütunları
- Seçimler (Evet/Hayır seçimi dışında)
- Currency
Ayrıca bkz.
Microsoft Power Fx'e genel bakış
Formül, kod kullanılarak hesaplanan sütunlar ve toplu değer sütunları