Bekerja dengan lajur formula
Lajur formula ialah lajur yang memaparkan nilai yang dikira dalam jadual Microsoft Dataverse. Formula menggunakan Power Fx, bahasa pemprograman yang berkuasa namun mesra manusia. Bina formula dalam lajur formula Dataverse sebagaimana anda membina formula dalam Microsoft Excel. Apabila anda menaip, IntelliSense mencadangkan fungsi dan sintaks, malah membantu anda membetulkan ralat.
Tambahkan lajur formula
Daftar masuk ke Power Apps di https://make.powerapps.com.
Pilih Jadual dan kemudian pilih jadual di mana anda mahu menambah lajur formula. Jika item tidak ditemukan dalam anak tetingkap panel sisi, pilih ...Lagi, kemudian pilih item yang anda kehendaki.
Pilih kawasan Lajur, kemudian pilih Lajur baharu.
Masukkan maklumat berikut:
- Nama paparan untuk lajur.
- Secara pilihan, masukkan Perihalan lajur.
Untuk Jenis data, pilih Formula fx.
Taipkan formula atau gunakan cadangan formula:
Masukkan Power Fx formula dalam kotak Formula . Maklumat lanjut:Taip formula
- Pilih sifat tambahan:
- Pilih Boleh Dicari jika anda mahu lajur ini tersedia dalam pandangan, carta, papan pemuka dan Carian Lanjutan.
- Pilihan lanjutan:
- Jika formula dinilai kepada nilai perpuluhan, kembangkan Pilihan lanjutan untuk menukar bilangan titik ketepatan, antara 0 dan 10. Nilai lalai ialah 2.
- Pilih Simpan.
Taip formula
Contoh berikut mencipta lajur formula yang dipanggil Jumlah harga. Lajur Bilangan unit ialah jenis data nombor bulat. Lajur Harga ialah jenis data perpuluhan.
Lajur formula memaparkan hasil Harga darab Bilangan unit.
Formula yang anda masukkan menentukan jenis lajur. Anda tidak boleh mengubah jenis lajur selepas lajur dicipta. Ini bermakna anda boleh mengubah formula selepas anda mencipta lajur hanya jika ia tidak mengubah jenis lajur.
Sebagai contoh, formula harga * diskaun mencipta jenis lajur nombor. Anda boleh menukar harga * diskaun kepada harga * (diskaun + 10%)kerana itu tidak mengubah jenis lajur. Walau bagaimanapun, anda tidak boleh menukar harga * diskaun kepada Teks(harga * diskaun)kerana itu memerlukan menukar jenis lajur kepada rentetan.
Dapatkan cadangan formula (pratonton)
[Topik ini ialah dokumentasi prapelancaran dan tertakluk pada perubahan.]
Terangkan perkara yang anda mahu formula lakukan dan dapatkan hasil yang dijana AI. Cadangan formula menerima input bahasa semula jadi anda untuk mentafsir dan mencadangkan Power Fx formula menggunakan model AI berasaskan GPT.
Penting
Ini ialah ciri pratonton yang tersedia hanya di rantau AS sahaja.
Ciri pratonton bukan untuk kegunaan pengeluaran dan kefungsian mungkin terbatas. Ciri ini tersedia sebelum keluaran rasmi agar pelanggan boleh mendapat akses awal dan memberikan maklum balas.
Pada masa ini, cadangan formula yang merujuk jadual tunggal disokong. Cadangan formula yang merujuk lajur pada jadual berkaitan tidak disokong.
Prasyarat
Untuk mendayakan ciri ini, anda mesti mendayakan cadangan AI untuk tetapan persekitaran lajur formula . Maklumat lanjut: Cadangan AI untuk lajur formula
Contoh input bahasa semula jadi
Bayangkan terdapat lajur Penilaian Pelanggan yang menunjukkan penilaian mereka mengikut akaun.
Dalam kotak Dapatkan cadangan formula masukkan formula dalam bahasa semula jadi, seperti Jika penarafan pada lajur penarafan sama atau lebih besar daripada 5 kemudian nyatakan sebagai Baik dan jika kurang daripada 5 nyatakan sebagai Purata dan jika nilai kosong atau sifar kemudian paparkan sebagai Buruk dan kemudian pilih butang anak panah (enter).
Kemudian salin Formula yang Disyorkan.
Dan tampalkannya ke dalam kotak Taip formula . Pilih Simpan.
Berikut ialah cara formula muncul apabila ditampal.
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"
)
Semak lajur formula Perihalan Penilaian yang dikira, yang kelihatan seperti ini.
AI Yang Bertanggungjawab
Untuk maklumat tentang AI yang bertanggungjawab, pergi ke sumber ini:
- Soalan Lazim untuk membina aplikasi dan jadual melalui perbualan
- Soalan Lazim tentang menggunakan AI secara bertanggungjawab dalam Power Apps
Operators
Anda boleh menggunakan operator berikut dalam lajur formula:
+, -,, * /, %, dalam, tepat, &
Untuk mendapatkan maklumat lanjut, pergi ke Operator dalam Power Apps.
Jenis data
Anda boleh memaparkan jenis data berikut dalam lajur formula:
- Teks
- Nombor perpuluhan
- Pilihan Ya/Tidak (boolean)
- Tarikh masa
- Nombor Bulat
Jenis data mata wang dan pilihan (dahulunya set pilihan) tidak disokong pada masa ini.
Jenis fungsi
Anda boleh menggunakan jenis fungsi berikut dalam lajur formula:
- Decimal
- String
- Boolean
- Set opsyen
- DateTime (TZI)
- DateTime (Pengguna tempatan) (terhad kepada perbandingan dengan nilai tempatan pengguna lain Fungsi DateAdd dan DateDiff)
- DateTime (Tarikh sahaja) (terhad kepada perbandingan dengan nilai tarikh sahaja yang lain, fungsi DateAdd dan DateDiff)
- Mata Wang
- Nombor Bulat, dipromosikan kepada Perpuluhan
Fungsi
Untuk fungsi skalar yang boleh anda gunakan dalam lajur formula, pergi ke Rujukan formula -lajur Dataverse formula.
* Fungsi Teks dan Nilai hanya berfungsi dengan nombor bulat, apabila tiada pemisah perpuluhan terlibat. Pemisah perpuluhan berbeza-beza antara tempatan. Atas sebab lajur formula dinilai tanpa pengetahuan tempatan, tiada cara untuk mentafsirkan atau menjana pemisah perpuluhan dengan betul.
* Argumen StartOfWeek tidak disokong untuk fungsi WeekNum dan Weekday dalam lajur formula.
Contoh fungsi
Description | Contoh |
---|---|
Dapatkan semula nilai tarikh. | DateAdd(UTCNow(),-1,TimeUnit.Years) |
Buat lajur formula perpuluhan
Cipta lajur formula yang mengembalikan nombor perpuluhan.
- Apabila anda mencipta lajur, masukkan maklumat berikut:
- Nama paparan untuk lajur.
- Secara pilihan, masukkan Perihalan lajur.
- Untuk Jenis data, pilih Formula fx.
- Masukkan formula yang mengembalikan nilai berangka dalam bar Formula . Contoh ini mencipta lajur formula yang dipanggil Jumlah Amaun. Lajur Harga setiap unit ialah jenis data perpuluhan.
- Kembangkan Pilihan lanjutan, pilih Perpuluhan sebagai jenis data Formula dan kemudian tetapkan bilangan tempat perpuluhan yang diperlukan.
- Pilih Simpan.
Buat lajur formula nombor bulat
Cipta lajur formula yang mengembalikan nombor bulat.
- Apabila anda mencipta lajur, masukkan maklumat berikut:
- Nama paparan untuk lajur.
- Secara pilihan, masukkan Perihalan lajur.
- Untuk Jenis data, pilih Formula fx.
- Masukkan formula yang mengembalikan nilai berangka dalam bar Formula . Contoh ini mencipta lajur formula yang dipanggil Bilangan Unit. Jumlah Harga dan Harga setiap unit lajur adalah jenis data perpuluhan.
- Kembangkan Pilihan lanjutan, dan pilih Nombor bulat sebagai jenis data Formula dan tetapkan format yang diperlukan untuk lajur nombor bulat.
- Pilih Simpan.
Garis panduan dan had
Bahagian ini menerangkan garis panduan dan had yang diketahui dengan lajur formula dalam Dataverse.
Pengesahan penggunaan medan mata wang
- Lajur formula tidak menyokong penggunaan lajur mata wang jadual berkaitan dalam formula, seperti dalam contoh ini.
- Penggunaan langsung lajur mata wang dan kadar pertukaran dalam formula pada masa ini tidak disokong. Penggunaan lajur mata wang dan kadar pertukaran dicapai melalui
Decimal
fungsi, sepertiDecimal(currency column)
atauDecimal(exchange rate)
. Fungsi iniDecimal
memastikan output berada dalam julat yang diterima. Jika nilai lajur mata wang atau kadar pertukaran melebihi julat yang diterima, maka formula mengembalikan nol. - Lajur mata wang asas tidak disokong dalam ungkapan lajur formula kerana ia adalah lajur sistem yang digunakan untuk tujuan pelaporan. Jika anda mahukan hasil yang serupa, anda boleh menggunakan jenis lajur mata wang bersama-sama dengan gabungan lajur kadar pertukaran sebagai
CurrencyField_Base = (CurrencyField / ExchangeRate)
.
Pengesahan penggunaan lajur tarikh, masa
- Kelakuan lajur formula tarikh masa hanya boleh dikemas kini apabila ia tidak digunakan dalam lajur formula lain.
- Untuk lajur formula masa tarikh, semasa menggunakan
DateDiff
fungsi, pastikan bahawa:- Lajur tingkah laku tempatan pengguna tidak boleh dibandingkan atau digunakan dengan
DateTime(TZI)/DateOnly
lajur tingkah laku. - Lajur tingkah laku tempatan pengguna hanya boleh dibandingkan atau digunakan dengan lajur tingkah laku tempatan pengguna yang lain.
DateTime(TZI)
Lajur tingkah laku boleh dibandingkan atau digunakan dalamDateDiff
fungsi dengan lajur tingkah laku lainDateTime(TZI)/DateOnly
.DateOnly
lajur tingkah laku boleh dibandingkan atau digunakan dalam fungsi DateDiff dengan lajur tingkah laku lainDateTime(TZI)/DateOnly
.
- Lajur tingkah laku tempatan pengguna tidak boleh dibandingkan atau digunakan dengan
- Lajur masa tarikh dan fungsi
UTCNow()
masa tarikh, tidakNow()
boleh dihantar sebagai parameter kepada fungsi rentetan.
Penggunaan lajur formula dalam medan gulung atas
- Lajur formula mudah ialah tempat formula menggunakan lajur daripada rekod yang sama atau menggunakan nilai berkod keras. Untuk lajur rollup, lajur formula mestilah lajur formula mudah, seperti contoh lajur rollup ini.
- Lajur formula yang bergantung pada fungsi
UTCNow()
terikat masa danUTCToday()
tidak boleh digunakan dalam medan rollup.
Power Fx cadangan fungsi teks
Lajur formula tidak menyokong
Text()
fungsi dengan satu hujah jenis Nombor. Nombor boleh menjadi keseluruhan, perpuluhan atau mata wang.Lajur formula tidak menyokong penggunaan nombor dalam konfigurasi berikut:
- Dalam fungsi rentetan. Ini ialah fungsi rentetan yang diletakkan di mana sahaja hujah teks dijangkakan: Atas, Bawah, Kiri, Kanan, Gabungkan, Pertengahan, Len, StartsWith, EndsWith, TrimEnds, TrimEnds, Trim, Pengganti dan Ganti.
- Dalam formula tersirat, seperti
12 & "foo"
, atau12 & 34
, atau"foo" & 12
. - Paksaan nombor dalaman kepada teks tidak disokong. Kami mengesyorkan menggunakan
Text(Number, Format)
untuk menukar nombor kepada teks. Dalam kes di mana hujahString
dihantar dalam fungsiText
maka hujah tidakFormat
disokong. - Berikut ialah contoh menggunakan
Text
fungsi untuk menukar nombor kepada teks dan menambahkan rentetan padanya:
Concatenate(Text(123,"#"),"ab") Text(123,"#") & "foo"
Token pemformatan khusus tempatan seperti "." dan "," tidak disokong dalam lajur formula.
Pengesahan julat pada lajur formula
- Anda tidak boleh mengesetkan sifat Nilai minimum atau Nilai maksimum bagi lajur formula.
- Semua pengiraan dalaman hendaklah terletak dalam Dataverse julat untuk lajur formula jenis perpuluhan (-100000000000 hingga 100000000000).
- Nilai literal berkod keras yang dimasukkan dalam bar formula hendaklah berada dalam Dataverse julat.
- Jika terdapat lajur berangka yang nol maka ia dianggap 0 dalam operasi perantaraan. Sebagai contoh,
a+b+c and If a = null, b=2, c=3
maka lajur formula memberikan0 + 2 + 3 = 5
.- Kelakuan ini berbeza daripada lajur terhitung dalam kes ini kerana lajur terhitung memberi.
null + 2 + 3 = null
- Kelakuan ini berbeza daripada lajur terhitung dalam kes ini kerana lajur terhitung memberi.
Pengesahan umum pada lajur formula
- Lajur formula boleh merujuk lajur formula lain, tetapi lajur formula tidak boleh merujuk dirinya sendiri.
- Lajur formula tidak menyokong rantaian kitaran, seperti
F1 = F2 + 10, F2 = F1 * 2
. - Panjang ungkapan formula maksimum dalam lajur formula ialah 1,000 aksara.
- Kedalaman maksimum yang dibenarkan dalam lajur formula ialah 10. Kedalaman ditakrifkan sebagai rantaian lajur formula yang merujuk kepada formula lain atau lajur rollup.
- Sebagai contoh,
table E1, F1 = 1*2, table E2, F2 - E1*2
. Dalam contoh ini, kedalaman F2 ialah 1.
- Sebagai contoh,
- Dalam aplikasi dipacu model, pengisihan dinyahdayakan pada:
- Lajur formula yang mengandungi lajur jadual berkaitan.
- Lajur formula yang mengandungi lajur logik (contohnya, lajur alamat).
- Lajur formula yang mengandungi lajur terhitung atau formula yang lain.
- Lajur formula yang menggunakan fungsi
UTCNow()
terikat masa.
- Lajur jenis Nombor Bulat dengan format Bahasa, Tempoh, Zon Waktu tidak disokong dalam lajur formula.
- Lajur jenis Rentetan dengan format E-mel, Kawasan Teks, Simbol Ticker, URL tidak disokong dalam lajur formula.
- Lajur formula tidak memaparkan nilai apabila apl berada dalam mod luar talian mudah alih.
- Anda tidak boleh mencetuskan aliran kerja atau pemalam pada lajur formula.
- Kami tidak mengesyorkan menggunakan lajur terhitung dalam lajur formula dan sebaliknya.
- Peraturan pengesanan duplikasi tidak dicetuskan pada lajur formula.
- Fungsi ini
Now
boleh digunakan dengan lajur formula.Now()
mempunyai tingkah laku tempatan pengguna danUTCNow()
mempunyai tingkah laku bebas zon waktu. - Anda boleh menetapkan sifat ketepatan untuk lajur perpuluhan.
- Nilai jenis data formula lalai ditetapkan kepada Perpuluhan untuk formula yang mengembalikan nilai angka.
- Mengemas kini format lajur formula nombor bulat tidak disokong.
Power Fx Fungsi yang tidak disokong pada masa ini
- Kuasa
- Sqrt
- Exp
- Ln
- ^ (pengendali)
Lajur formula jenis data yang tidak boleh dihasilkan
- Pilihan (kecuali Ya/Tidak pilihan)
- Mata Wang