Bekerja dengan kolom rumus

Kolom rumus adalah kolom yang menampilkan nilai hitung dalam tabel Microsoft Dataverse. Menggunakan Power Fx formula, bahasa pemrograman yang kuat namun ramah 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 AT https://make.powerapps.com.

  2. Pilih Tabel, lalu pilih tabel tempat Anda ingin menambahkan kolom rumus. Jika item tidak ada di panel panel samping, pilih ... Lebih banyak dan kemudian pilih item yang Anda inginkan.

  3. Pilih area Kolom , lalu pilih Kolom baru.

  4. Masukkan informasi berikut:

    • Nama tampilan untuk kolom.
    • Secara opsional, masukkan Deskripsi kolom.
  5. Untuk Jenis data, pilih fx Formula.

  6. Ketik rumus atau gunakan saran rumus:

    Masukkan Power Fx rumus di kotak Rumus . Informasi selengkapnya: Ketik rumus


  1. Pilih properti tambahan:
    • Pilih Dapat Dicari jika Anda ingin kolom ini tersedia dalam tampilan, bagan, dasbor, dan Pencarian Lanjutan.
    • Opsi lanjutan:
      • Jika rumus dievaluasi ke nilai desimal, perluas Opsi lanjutan 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 tipe data bilangan bulat. Kolom Harga adalah tipe data desimal.

Tangkapan layar definisi kolom rumus.

Kolom rumus menampilkan hasil Harga dikalikan dengan Jumlah unit.

Tangkapan layar rekaman dengan kolom rumus.

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

Misalnya, harga rumus * 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 mengharuskan mengubah jenis kolom menjadi string.

Mendapatkan saran rumus (pratinjau)

[Topik ini adalah dokumentasi prarilis dan dapat berubah.]

Jelaskan apa yang Anda inginkan untuk dilakukan rumus 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 pengaturan lingkungan saran AI untuk kolom rumus. Informasi selengkapnya: Saran AI untuk kolom rumus

Contoh input bahasa alami

Bayangkan ada kolom Peringkat pelanggan yang menunjukkan rating mereka berdasarkan akun. Contoh kolom penilaian pelanggan

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

Kemudian salin Rumus yang Disarankan. Rumus yang disarankan

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

Berikut adalah bagaimana rumus muncul 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:
+, -, *, /, %, di, exactin, &

Untuk informasi selengkapnya, buka Operator di. Power Apps

Jenis data

Anda dapat menampilkan jenis data berikut di kolom rumus:

Informasi selengkapnya: Membuat kolom rumus dengan tipe data desimal, bilangan bulat, float, dan pilihan\

Jenis data mata uang saat ini tidak didukung.

Jenis fungsi

Anda dapat menggunakan jenis fungsi berikut di kolom rumus:

  • Decimal
  • String
  • Boolean
  • Pilihan
  • TanggalWaktu (TZI)
  • DateTime (Pengguna lokal) (terbatas pada perbandingan dengan nilai lokal pengguna lain DateAdd, dan fungsi DateDiff)
  • DateTime (Hanya tanggal) (terbatas pada perbandingan dengan nilai khusus tanggal lainnya, fungsi DateAdd, dan DateDiff)
  • Mata uang
  • Bilangan Cacah

Functions

Untuk fungsi skalar yang dapat Anda gunakan dalam kolom rumus, buka Referensi rumus -kolom Dataverse rumus.

* Fungsi Teks dan Nilai hanya bekerja dengan bilangan bulat, di mana tidak ada pemisah desimal yang 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 di kolom rumus.

Contoh fungsi

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

Pedoman dan batasan

Bagian ini menjelaskan pedoman 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 rumus 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) or Decimal(exchange rate). Fungsi ini Decimal memastikan output berada dalam kisaran yang diterima. Jika nilai kolom mata uang atau nilai tukar melebihi rentang yang diterima, maka rumus mengembalikan null.
  • Kolom mata uang dasar tidak didukung dalam ekspresi kolom rumus karena kolom sistem 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 tanggal-waktu hanya dapat diperbarui jika tidak digunakan di kolom rumus lain.
  • Untuk kolom rumus tanggal waktu, 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 lainnya.
    • 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 tanggal-waktu yang tidak didukung dengan kolom rumus
  • Kolom tanggal waktu dan fungsi UTCNow() tanggal waktu, Now() tidak dapat diteruskan sebagai parameter ke fungsi string. Kolom rumus dengan parameter tanggal waktu yang tidak didukung diteruskan dalam rumus

Penggunaan kolom rumus di bidang rollup

  • Kolom rumus sederhana adalah tempat rumus menggunakan kolom dari catatan 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 satu argumen jenis Number. 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, Gabungan, Tengah, Len, StartsWith, EndsWith, TrimEnds, Trim, Substitute, dan Replace.
    • Dalam rumus implisit, seperti 12 & "foo", atau 12 & 34, atau "foo" & 12.
    • Pemaksaan nomor internal ke teks tidak didukung. Sebaiknya gunakan Text(Number, Format) untuk mengonversi angka menjadi teks. Dalam kasus di mana String argumen diteruskan dalam Text fungsi maka Format argumen 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 dalam kolom rumus. Token pemformatan khusus lokal yang tidak didukung diteruskan sebagai parameter ke fungsi Teks dalam rumus

Validasi rentang pada kolom rumus

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

Validasi umum pada kolom rumus

  • Kolom rumus dapat mereferensikan kolom rumus lain, tetapi kolom rumus tidak dapat 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 mengacu pada rumus lain atau kolom rollup.
    • 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 logis (misalnya, kolom alamat).
    • Kolom rumus yang berisi kolom kalkulasi atau rumus lain.
    • Kolom rumus yang menggunakan fungsi UTCNow() terikat waktu.
  • Kolom jenis Bilangan Bulat dengan format Bahasa, Durasi, Zona Waktu tidak didukung dalam kolom rumus.
  • Kolom jenis String dengan format Email, Area Teks, Simbol Ticker, URL tidak didukung dalam kolom rumus.
  • Kolom rumus tidak menampilkan nilai saat aplikasi dalam mode offline seluler.
  • Anda tidak dapat memicu alur kerja atau plug-in pada kolom rumus.
  • Kami tidak menyarankan penggunaan 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.
  • Nilai tipe data rumus default diatur ke Desimal untuk nilai numerik yang mengembalikan rumus.
  • Memperbarui format kolom rumus bilangan bulat tidak didukung.

Kolom rumus tipe data yang tidak dapat dihasilkan

  • Mata uang

Baca juga

Jenis kolom

Microsoft Power Fx Ikhtisar

Kolom khusus