Bekerja dengan kolom rumus

Kolom rumus adalah kolom yang menampilkan nilai hitung dalam tabel Microsoft Dataverse. Penggunaan Rumus Power Fx, bahasa pemrograman yang kuat namun ramah terhadap manusia. Buat rumus di kolom rumus Dataverse dengan cara yang sama seperti anda akan membangun rumus di Microsoft Excel. Saat Anda mengetik, Intellisense menyarankan fungsi dan sintaks, dan bahkan membantu Anda memperbaiki kesalahan.

Menambahkan kolom rumus

  1. Masuk ke Power Apps di https://make.powerapps.com.

  2. Pilih Tabel, lalu pilih tabel tempat Anda ingin menambahkan kolom rumus. Jika item tidak ada di panel pada panel sisi, pilih …Lainnya, lalu pilih item yang diinginkan.

  3. Pilih tab area kolom, lalu pilih kolom baru.

  4. Masukkan informasi berikut:

    • A nama tampilan untuk kolom.
    • Atau masukkan deskripsi kolom.
  5. Untuk Tipe data, pilih fx Formula.

  6. Ketikkan rumus atau gunakan saran rumus:

    Masukkan rumus dalam Power Fx kotak Rumus . Informasi selengkapnya: Ketikkan rumus


  1. Pilih properti tambahan:
    • Pilih Dapat Dicari jika Anda ingin kolom ini tersedia dalam tampilan, bagan, dasbor, dan Pencarian Tingkat Lanjut.
    • Opsi lanjutan:
      • Jika rumus mengevaluasi ke nilai desimal, perluas Opsi tingkat lanjut untuk mengubah jumlah titik presisi, antara 0 dan 10. Nilai default adalah 2.
  2. Pilih Simpan.

Ketik rumus

Contoh berikut membuat kolom rumus yang disebut Harga total. Kolom Jumlah unit adalah jenis data bilangan bulat. Kolom Harga adalah jenis data desimal.

Screenshot definisi kolom rumus.

Kolom rumus menampilkan hasil Harga yang dikalikan Jumlah unit.

cuplikan layar rekaman dengan kolom rumus.

Rumus yang Anda masukkan menentukan jenis kolom. Anda tidak dapat mengubah jenis kolom setelah kolom dibuat. Itu berarti Anda bisa mengubah rumus setelah Anda membuat kolom hanya jika itu tidak mengubah tipe kolom.

Contohnya, rumus harga * diskon membuat jenis kolom angka. Anda dapat mengubah harga * diskon menjadi harga * (diskon + 10%) karena itu tidak mengubah jenis kolom. Namun, Anda tidak dapat mengubah harga * diskon menjadi Teks (harga * diskon) karena itu akan memerlukan perubahan jenis kolom menjadi string.

Mendapatkan saran rumus (pratinjau)

[Topik ini adalah dokumentasi prarilis dan dapat berubah.]

Jelaskan apa yang Anda ingin rumus lakukan dan dapatkan hasil yang dihasilkan AI. Saran rumus menerima input bahasa alami Anda untuk menafsirkan dan menyarankan Power Fx rumus menggunakan model AI berbasis GPT.

Penting

Ini adalah fitur pratinjau yang hanya tersedia di wilayah AS saja.

Fitur pratinjau tidak dibuat untuk penggunaan produksi dan mungkin memiliki fungsionalitas yang dibatasi. Fitur ini tersedia sebelum rilis resmi agar pelanggan bisa memperoleh akses awal dan memberikan tanggapan.

Saat ini, saran rumus yang mereferensikan satu tabel didukung. Saran rumus yang mereferensikan kolom pada tabel terkait tidak didukung.

Prasyarat

Untuk mengaktifkan fitur ini, Anda harus mengaktifkan saran AI untuk pengaturan lingkungan kolom rumus. Informasi selengkapnya: Saran AI untuk kolom rumus

Contoh input bahasa alami

Bayangkan ada kolom Rating pelanggan yang menunjukkan rating mereka berdasarkan akun. Contoh kolom peringkat pelanggan

Dalam kotak Dapatkan saran rumus, masukkan rumus dalam bahasa alami, seperti Jika peringkat pada kolom peringkat sama atau lebih besar dari 5 maka tunjukkan sebagai Baik dan jika kurang dari 5 tunjukkan sebagai Rata-rata dan jika nilainya kosong atau nol maka tampilkan sebagai Buruk, lalu pilih tombol panah (enter).

Kemudian salin Formula yang Disarankan. Formula yang disarankan

Dan tempelkan ke dalam Ketik rumus kotak. Pilih Simpan. Tempelkan rumus ke dalam kotak Ketikkan rumus.

Berikut adalah tampilan rumus saat ditempelkan.

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"
)

Periksa kolom rumus Deskripsi Peringkat yang dihitung, yang muncul seperti ini.

Memeriksa hasil untuk kolom rumus

AI yang bertanggung jawab

Untuk informasi tentang AI yang bertanggung jawab, buka sumber daya berikut:

Operators

Anda dapat menggunakan operator berikut pada kolom rumus:
+, -, *, /, %, dalam, tepat, &

Untuk informasi lebih lanjut, buka Operator di Power Apps.

Jenis data

Anda dapat menampilkan jenis data berikut di kolom rumus:

  • SMS
  • Bilangan desimal
  • Pilihan Ya/Tidak (boolean)
  • Datetime

Tipe data mata uang, bilangan bulat, dan pilihan (sebelumnya kumpulan opsi) saat ini tidak didukung.

Jenis fungsi

Anda dapat menggunakan jenis fungsi berikut di kolom rumus:

  • Decimal
  • String
  • Boolean
  • Set Opsi
  • DateTime (TZI)
  • DateTime (Lokal pengguna) (terbatas pada perbandingan dengan nilai lokal pengguna lain Fungsi DateAdd, dan DateDiff)
  • DateTime (Hanya tanggal) (terbatas pada perbandingan dengan nilai khusus tanggal lainnya, fungsi DateAdd, dan DateDiff)
  • Mata uang
  • bilangan bulat, dipromosikan ke Desimal

Fungsi

Anda dapat menggunakan fungsi skalar berikut di kolom rumus:

Abs

Dan

Nilai *

If

Int

Len

Max

Mid

Min

Mod

Not

Hak

Sum

Teks *

* Fungsi Teks dan Nilai hanya berfungsi dengan bilangan bulat, dengan pemisah desimal tidak terlibat. Pemisah desimal bervariasi di seluruh lokal. Karena kolom rumus dievaluasi tanpa pengetahuan lokal, tidak ada cara untuk mengartikan atau menghasilkan pemisah desimal dengan benar.

* Argumen StartOfWeek tidak didukung untuk fungsi WeekNum dan Weekday dalam kolom rumus.

Contoh fungsi

Description Contoh
Ambil nilai tanggal. DateAdd(UTCNow(),-1,TimeUnit.Years)

Panduan dan batasan

Bagian ini menjelaskan panduan dan batasan yang diketahui dengan kolom rumus di Dataverse.

Validasi penggunaan bidang mata uang

  • Kolom rumus tidak mendukung penggunaan kolom mata uang tabel terkait dalam rumus, seperti dalam contoh ini. Kolom Formula dengan rumus Account.Annual Revenue yang tidak didukung
  • Penggunaan langsung kolom mata uang dan nilai tukar dalam rumus saat ini tidak didukung. Penggunaan kolom mata uang dan nilai tukar dicapai melalui Decimal fungsi, seperti Decimal(currency column) atau Decimal(exchange rate). Fungsi ini Decimal memastikan output berada dalam rentang yang diterima. Jika nilai kolom mata uang atau nilai tukar melebihi rentang yang diterima, rumus mengembalikan null.
  • Kolom mata uang dasar tidak didukung dalam ekspresi kolom rumus karena merupakan kolom sistem yang digunakan untuk tujuan pelaporan. Jika Anda menginginkan hasil yang serupa, Anda dapat menggunakan jenis kolom mata uang bersama dengan kombinasi kolom nilai tukar sebagai CurrencyField_Base = (CurrencyField / ExchangeRate).

Validasi penggunaan kolom tanggal waktu

  • Perilaku kolom rumus waktu tanggal hanya bisa diperbarui bila tidak digunakan di kolom rumus lain.
  • Untuk kolom rumus waktu tanggal, saat menggunakan DateDiff fungsi, pastikan bahwa:
    • Kolom perilaku lokal pengguna tidak dapat dibandingkan atau digunakan dengan DateTime(TZI)/DateOnly kolom perilaku.
    • Kolom perilaku lokal pengguna hanya dapat dibandingkan atau digunakan dengan kolom perilaku lokal pengguna lain.
    • DateTime(TZI) Kolom perilaku dapat dibandingkan atau digunakan dalam DateDiff fungsi dengan kolom perilaku lain DateTime(TZI)/DateOnly .
    • DateOnly kolom perilaku dapat dibandingkan atau digunakan dalam fungsi DateDiff dengan kolom perilaku lain DateTime(TZI)/DateOnly . Konfigurasi waktu tanggal yang tidak didukung dengan kolom rumus
  • Kolom waktu tanggal dan fungsi UTCNow() waktu tanggal, Now() tidak dapat diteruskan sebagai parameter ke fungsi string. Kolom rumus dengan parameter waktu tanggal yang tidak didukung diteruskan dalam rumus

Penggunaan kolom rumus dalam bidang rollup

  • Kolom rumus sederhana adalah tempat rumus menggunakan kolom dari rekaman yang sama atau menggunakan nilai kode keras. Untuk kolom rollup, kolom rumus harus berupa kolom rumus sederhana, seperti contoh kolom rollup ini. Contoh kolom rumus sederhana untuk kolom rollup Contoh konfigurasi kolom rollup
  • Kolom rumus yang bergantung pada fungsi UTCNow() terikat waktu dan UTCToday() tidak dapat digunakan dalam bidang rollup.

Power Fx Rekomendasi fungsi teks

  • Kolom rumus tidak mendukung Text() fungsi dengan argumen tunggal tipe Angka. Angka bisa utuh, desimal, atau mata uang. Kolom rumus dengan fungsi teks yang tidak didukung dengan argumen angka

  • Kolom rumus tidak mendukung penggunaan angka dalam konfigurasi berikut:

    • Dalam fungsi string. Ini adalah fungsi string yang ditempatkan di mana pun argumen teks diharapkan: Atas, Bawah, Kiri, Kanan, Concatenate, Mid, Len, StartsWith, EndsWith, TrimEnds, Trim, Substitute, dan Replace.
    • Dalam rumus implisit, seperti 12 & "foo", atau 12 & 34, atau "foo" & 12.
    • Pemaksaan angka ke teks internal tidak didukung. Sebaiknya gunakan Text(Number, Format) untuk mengonversi angka menjadi teks. Dalam kasus di mana String argumen diteruskan dalam fungsi Text , maka argumen tersebut Format tidak didukung.
    • Berikut adalah contoh menggunakan fungsi untuk Text mengonversi angka menjadi teks dan menambahkan string ke dalamnya:
    Concatenate(Text(123,"#"),"ab")
    Text(123,"#") & "foo"
    
  • Token pemformatan khusus lokal seperti "." dan "," tidak didukung di kolom rumus. Token pemformatan khusus lokal yang tidak didukung diteruskan sebagai parameter ke fungsi Teks dalam rumus

Validasi rentang pada kolom rumus

  • Anda tidak bisa mengatur properti Nilai minimum atau Nilai maksimum kolom rumus.
  • Semua perhitungan internal harus berada dalam Dataverse rentang untuk kolom rumus tipe desimal (-100000000000 hingga 100000000000).
  • Nilai literal berkode keras yang dimasukkan di bilah rumus harus berada dalam Dataverse rentang.
  • Jika ada kolom numerik yang null maka dianggap 0 dalam operasi perantara. Misalnya, a+b+c and If a = null, b=2, c=3 maka kolom rumus memberi 0 + 2 + 3 = 5.
    • Perilaku ini berbeda dari kolom terhitung dalam kasus ini karena kolom terhitung memberikan null + 2 + 3 = null.

Validasi umum pada kolom rumus

  • Kolom rumus bisa mereferensikan kolom rumus lain, tapi kolom rumus tidak bisa mereferensikan dirinya sendiri.
  • Kolom rumus tidak mendukung rantai siklik, seperti F1 = F2 + 10, F2 = F1 * 2.
  • Panjang ekspresi rumus maksimum dalam kolom rumus adalah 1.000 karakter.
  • Kedalaman maksimum yang diizinkan dalam kolom rumus adalah 10. Kedalaman didefinisikan sebagai rantai kolom rumus yang merujuk ke kolom rumus atau rollup lainnya.
    • Sebagai contoh, table E1, F1 = 1*2, table E2, F2 - E1*2. Dalam contoh ini, kedalaman F2 adalah 1.
  • Dalam aplikasi berbasis model, pengurutan dinonaktifkan pada:
    • Kolom rumus yang berisi kolom tabel terkait.
    • Kolom rumus yang berisi kolom logika (misalnya, kolom alamat).
    • Kolom rumus yang berisi kolom terhitung atau rumus lainnya.
    • Kolom rumus yang menggunakan fungsi terikat waktu UTCNow().
  • Kolom tipe Bilangan Bulat dengan format Bahasa, Durasi, Zona Waktu tidak didukung dalam kolom rumus.
  • Kolom tipe String dengan format Email, Area Teks, Simbol Saham, URL tidak didukung di kolom rumus.
  • Kolom rumus tidak menampilkan nilai saat aplikasi dalam mode mobile offline.
  • Anda tidak bisa memicu alur kerja atau plug-in pada kolom rumus.
  • Kami tidak menyarankan menggunakan kolom terhitung di kolom rumus dan sebaliknya.
  • Aturan deteksi duplikat tidak dipicu pada kolom rumus.
  • Fungsi ini Now dapat digunakan dengan kolom rumus. Now() Memiliki perilaku lokal pengguna dan UTCNow() memiliki perilaku independen zona waktu.
  • Anda dapat mengatur properti presisi untuk kolom desimal.

Power Fx Fungsi yang saat ini tidak didukung

  • Daya
  • Sqrt
  • Exp
  • Ln
  • ^ (operator)

Kolom rumus tipe data yang tidak bisa dihasilkan

  • Bilangan Cacah
  • Pilihan (kecuali pilihan Ya/Tidak)
  • Mata uang

Baca juga

Jenis kolom

Ikhtisar Microsoft Power Fx

Kolom rumus, terhitung, dan rollup menggunakan kode