Bagikan melalui


Fungsi UpdateContext

Berlaku untuk: Aplikasi kanvas

Membuat atau memperbarui variabel konteks layar saat ini.

Gambaran Umum

Gunakan fungsi UpdateContext untuk membuat variabel konteks, yang sementara menyimpan bagian informasi, seperti berapa kali pengguna memilih tombol atau hasil dari operasi data.

Variabel konteks merupakan bagian layar, yang berarti bahwa Anda tidak dapat membuat rumus yang merujuk ke variabel konteks di layar lain. Jika Anda telah menggunakan alat pemrograman lain, Anda dapat mempertimbangkan variabel konteks yang mirip dengan variabel lokal. Gunakan fungsi Set untuk bekerja dengan variabel global yang tersedia di seluruh aplikasi Anda.

Power Apps didasarkan pada rumus yang secara otomatis menghitung ulang saat pengguna berinteraksi dengan aplikasi. Variabel konteks tidak menawarkan manfaat ini dan penggunaannya dapat membuat aplikasi Anda lebih sulit dibuat dan dimengerti. Sebelum Anda menggunakan variabel konteks, lihat bekerja dengan variabel.

KETERANGAN

Untuk membuat atau memperbarui variabel konteks, teruskan satu rekaman ke fungsi UpdateContext. Dalam setiap rekaman, tentukan nama kolom, yang mendefinisikan atau mencocokkan nama variabel, dan nilai yang ingin Anda atur ke variabel tersebut.

  • Jika Anda menentukan nama variabel yang telah ditentukan sebelumnya, UpdateContext akan menetapkan nilai variabel ke nilai yang Anda tentukan.
  • Jika Anda menentukan nama variabel yang belum ada, UpdateContext membuat variabel dengan nama tersebut dan menetapkan nilai variabel tersebut ke nilai yang Anda tentukan.
  • Jika Anda sebelumnya telah mendefinisikan variabel namun tidak menentukannya dalam rumus UpdateContext tertentu, nilainya tetap sama.

Variabel konteks secara implisit dibuat menggunakan fungsi UpdateContext atau Navigate. Tidak ada pernyataan eksplisit yang diperlukan. Jika Anda menghapus semua referensi UpdateContext dan Navigate ke variabel konteks, variabel konteks tersebut akan berhenti tersedia. Untuk menghapus variabel yang mengatur nilainya ke hasil dari fungsi Blank.

Anda dapat melihat nilai variabel, definisi, dan penggunaan dengan tampilan Variabel di dalam menu File di lingkungan penulisan.

Anda mereferensikan variabel konteks dalam rumus menggunakan nama kolom variabel. Misalnya, UpdateContext( { ShowLogo: true } ) membuat variabel konteks bernama ShowLogo dan menetapkan nilainya ke true. Anda kemudian dapat menggunakan nilai variabel konteks ini dengan menggunakan nama ShowLogo dalam rumus. Anda dapat menulis ShowLogo sebagai rumus untuk properti yang Terlihat dari kontrol gambar dan menampilkan atau menyembunyikan kontrol berdasarkan apakah nilai variabel konteks adalah true atau false.

Sebagai contoh nanti yang ditampilkan dalam topik, variabel konteks dapat memiliki beberapa jenis informasi, termasuk:

  • satu nilai
  • rekaman
  • tabel
  • referensi objek
  • hasil apa pun dari rumus

Variabel konteks menyimpan nilainya hingga aplikasi ditutup. Jika Anda menentukan variabel konteks dan menetapkan nilainya pada layar tertentu, informasi tersebut tetap utuh meskipun pengguna beralih ke layar yang berbeda. Setelah aplikasi ditutup, nilai variabel konteks akan hilang dan harus dibuat ulang saat aplikasi dimuat kembali.

Variabel konteks merupakan bagian dari layar. Jika Anda ingin mendefinisikan variabel konteks pada satu layar dan memodifikasi variabel tersebut dari layar lain, Anda harus membuat rumus yang didasarkan pada fungsi Navigate. Atau gunakan variabel global.

UpdateContext tidak memiliki nilai yang dihasilkan, dan Anda dapat menggunakannya hanya dalam rumus perilaku.

Sintaks

UpdateContext( UpdateRecord )

  • UpdateRecord – Wajib. Rekaman yang berisi nama setidaknya satu kolom dan nilai untuk kolom tersebut. Variabel konteks dibuat atau diperbarui untuk setiap kolom dan nilai yang Anda tentukan.

UpdateContext( { ContextVariable1: Value1 [, ContextVariable2: Value2 [, ... ] ] } )

  • ContextVariable1 - Wajib. Nama variabel konteks untuk membuat atau memperbarui.
  • Value1 - Wajib. Nilai yang ditetapkan ke variabel konteks.
  • ContextVariable2: Value2, ... - Opsional. Variabel konteks tambahan untuk membuat atau memperbarui dan nilainya.

Contoh

Rumus KETERANGAN Hasil
UpdateContext( { Counter: 1 } ) Membuat atau memodifikasi pengaturan Counter variabel konteks, mengatur nilainya ke 1. Counter memiliki nilai 1. Anda dapat mereferensikan variabel tersebut menggunakan nama Counter dalam rumus.
UpdateContext( { Counter: 2 } ) Menetapkan nilai variabel konteks Counter dari contoh sebelumnya ke 2. Counter memiliki nilai 2.
UpdateContext( { Name: "Lily", Score: 10 } ) Membuat atau mengubah Name dan Score variabel konteks, mengatur nilainya ke Lily dan 10 masing-masing. Name memiliki nilai Lily, dan Score memiliki nilai 10.
UpdateContext( { Person: { Name: "Milton", Address: "1 Main St" } } ) Membuat atau memodifikasi Person variabel konteks, mengatur nilainya ke rekaman. Rekaman berisi dua kolom, bernama Nama dan Alamat. Nilai kolom Nama adalah Milton, dan nilai kolom Alamat adalah 1 Main St. Person memiliki nilai rekaman { Name: "Milton", Address: "1 Main St" } }.

Rujuk rekaman ini secara keseluruhan dengan nama Persona, atau rujuk masing-masing kolom rekaman ini dengan Person.Name atau Person.Address.
UpdateContext( { Person: Patch( Person, {Address: "2 Main St" } ) } ) Berfungsi dengan fungsi Patch untuk memperbarui variabel konteks Person dengan mengatur nilai kolom Alamat ke 2 Main St. Person sekarang memiliki nilai rekaman { Name: "Milton", Address: "2 Main St" } }.

Contoh langkah demi langkah 1

  1. Beri nama Sumber layar default, tambahkan layar lainnya dan beri nama Target.

  2. Pada layar Sumber, tambahkan dua tombol, dan atur properti Teks sehingga salah satunya mengucapkan Bahasa Inggris dan yang lainnya Bahasa Spanyol.

  3. Atur properti OnSelect pada tombol Bahasa Inggris ke ekspresi ini:
    Navigate(Target, ScreenTransition.Fade, {Language:"Inggris"})

  4. Atur properti OnSelect pada tombol Bahasa Spanyol ke ekspresi ini:
    Navigate(Target, ScreenTransition.Fade, {Language:"Spanyol"})

  5. Pada layar Target, tambahkan label, dan atur properti Teks ke ekspresi ini:
    If(Language="English", "Hello!", "Hola!")

  6. Pada layar Target, pilih Bentuk di tab Sisipkan, lalu pilih panah Kembali.

  7. Atur properti OnSelect panah Kembali ke rumus ini:
    Navigate(Source, ScreenTransition.Fade)

  8. Dari layar Sumber, tekan F5, lalu pilih tombol untuk bahasa apa pun.

    Pada layar Target, label akan ditampilkan dalam bahasa yang sesuai dengan tombol yang Anda pilih.

  9. Pilih panah Kembali untuk kembali ke layar Sumber, lalu pilih tombol untuk bahasa lainnya.

    Pada layar Target, label akan ditampilkan dalam bahasa yang sesuai dengan tombol yang Anda pilih.

  10. Tekan Esc untuk kembali ke ruang kerja default.

Contoh langkah demi langkah 2

  1. Buka aplikasi Canvas tempat Anda ingin menggunakan rumus ini.
  2. Tambahkan layar kosong baru dengan memilih layar baru dari bilah perintah.
  3. Tambahkan tombol dan atur properti OnSelect ke formula ini:
    UpdateContext( { Name: "Lily", Score: 10 } )