Kongsi melalui


Fungsi EditForm, NewForm, SubmitForm, ResetForm dan ViewForm

Digunakan untuk: Aplikasi kanvas

Lihat, edit atau cipta item, simpan kandungan dan tetap semula kawalan dalam kawalan Edit form.

Ikhtisar

Fungsi ini mengubah keadaan kawalan Edit borang. Kawalan borang boleh berada dalam salah satu daripada mod ini:

Mod Penerangan
FormMode.Edit Borang diisi dengan rekod sedia ada dan pengguna boleh mengubah suai nilai medan. Setelah selesai, pengguna boleh menyimpan perubahan pada rekod.
FormMode.New Borang telah diisi dengan nilai lalai dan pengguna boleh mengubah suai nilai medan. Setelah selesai, pengguna boleh menambah rekod pada sumber data.
FormMode.View Borang diisi dengan rekod sedia ada tetapi pengguna tidak boleh mengubah suai nilai medan.

Penerangan

Fungsi ini sering digunakan daripada formula OnSelect butang ... atau kawalan Imej supaya pengguna boleh menyimpan suntingan, meninggalkan pengeditan atau mencipta rekod. Anda boleh menggunakan kawalan dan fungsi ini bersama-sama untuk mencipta penyelesaian yang lengkap.

Fungsi ini tiada nilai pulangan.

Anda boleh menggunakan fungsi ini hanya dalam formula tingkah laku.

SubmitForm

Gunakan fungsi SubmitForm dalam sifat OnSelect bagi kawalan Butang untuk menyimpan sebarang perubahan dalam kawalan Borang pada sumber data.

Sebelum menyerahkan sebarang perubahan, fungsi ini menyemak masalah pengesahan dengan sebarang medan yang ditanda sebagai diperlukan atau yang mempunyai satu atau lebih kekangan pada nilainya. Tingkah laku ini sepadan dengan tingkah laku fungsi Validate.

SubmitForm juga menyemak sifat sah Borang, yang merupakan pengagregatan semua sifat sah kawalan kad yang mengandungi kawalan Borang. Jika masalah berlaku, data tidak dihantar dan sifat Ralat dan ErrorKind bagi kawalan Borang ditetapkan dengan sewajarnya.

Jika pengesahan lulus, SubmitForm menyerahkan perubahan pada sumber data.

  • Jika berjaya, tingkah laku OnSuccess Borang berjalan dan sifat Ralat dan ErrorKind dibersihkan. Jika borang dalam mod FormMode.New, ia akan dikembalikan ke mod FormMode.Edit.
  • Jika tidak berjaya, tingkah laku OnFailure Borang berjalan dan sifat Ralat dan ErrorKind ditetapkan dengan sewajarnya. Mod borang tidak berubah.

EditForm

Fungsi EditForm mengubah mod kawalan Borang ke FormMode.Edit. Dalam mod ini, kandungan sifat Item kawalan Borang digunakan untuk mengisi borang. Jika fungsi SubmitForm dijalankan semasa borang berada dalam mod ini, rekod diubah, tidak dicipta. FormMode.Edit adalah lalai untuk kawalan Borang.

Nota

Apabila borang berada dalam mod edit dan Item adalah nol, sifat kad data tidak dinilai dan akan mengembalikan nilai lalai.

NewForm

Fungsi NewForm mengubah mod kawalan Borang ke FormMode.New. Dalam mod ini, kandungan sifat Item kawalan Borang diabaikan dan nilai lalai sifat DataSource Borang yang mengisi borang. Jika fungsi SubmitForm dijalankan semasa borang berada dalam mod ini, rekod dicipta, tidak berubah.

ResetForm

Fungsi ResetForm menetapkan semula kandungan borang kepada nilai awalnya sebelum pengguna membuat sebarang perubahan. Jika borang berada dalam mod FormMode.New, borang ditetapkan semula ke mod FormMode.Edit. Tingkah laku OnReset kawalan borang juga dijalankan. Anda juga boleh menetapkan semula kawalan individu dengan fungsi Reset tetapi hanya dari dalam borang.

ViewForm

Fungsi ViewForm mengubah mod kawalan Borang ke FormMode.View. Dalam mod ini, kandungan sifat Item kawalan Borang digunakan untuk mengisi borang. Fungsi SubmitForm dan ResetForm tidak mempunyai kesan apabila dalam mod ini.

Sifat DisplayMode

Mod semasa boleh dibaca melalui sifat Mod. Mod juga menentukan nilai sifat DisplayModeyang boleh digunakan dengan kad dan kawalan data di dalam kawalan borang. Selalunya, sifat DisplayMode kad data akan ditetapkan kepada Parent.DisplayMode (merujuk borang) begitu juga sifat DisplayMode kawalan (merujuk kad data):

Mod DisplayMode Penerangan
FormMode.Edit DisplayMode.Edit Kad dan kawalan data boleh diedit, bersedia menerima perubahan kepada rekod.
FormMode.New DisplayMode.Edit Kad dan kawalan data boleh diedit, bersedia menerima rekod baharu.
FormMode.View DisplayMode.View Kad data dan kawalan tidak boleh diedit dan dioptimumkan untuk pandangan.

Sintaks

SubmitForm( FormName )

  • FormName - Diperlukan. Borang kawalan untuk dihantar ke sumber data.

EditForm( FormName )

  • FormName - Diperlukan. Kawalan borang untuk menukar mod FormMode.Edit.

NewForm( FormName )

  • FormName - Diperlukan. Kawalan borang untuk menukar ke mod FormMode.New.

ResetForm( FormName )

  • FormName - Diperlukan. Kawalan borang untuk menetapkan semula ke nilai awal. Juga menukar borang daripada mod FormMode.New ke mod FormMode.Edit.

ViewForm( FormName )

  • FormName - Diperlukan. Kawalan borang untuk menukar ke mod FormMode.View.

Contoh

Lihat Memahami borang data untuk contoh yang lengkap.

  1. Tambah kawalan Butang, tetapkan sifat Teks untuk menunjukkan Simpan dan tetapkan sifat OnSelect untuk formula ini:

    SubmitForm( EditForm )

  2. Tetapkan sifat OnFailure kawalan Borang kepada kosong dan sifat OnSuccess untuk formula ini:

    Kembali()

  3. Nama kawalan Label ErrorText dan tetapkan sifat Teks untuk formula ini:

    EditForm.Error

    Apabila pengguna memilih butang Simpan, sebarang perubahan dalam kawalan Borang diserahkan ke sumber data yang mendasari.

    • Jika penyerahan berjaya, sebarang perubahan akan disimpan atau jika kawalan Borang berada dalam mod Baharu, rekod dicipta. ErrorText adalah kosong dan skrin sebelumnya muncul semula.
    • Jika penyerahan gagal, ErrorText menunjukkan mesej ralat yang mesra pengguna dan skrin semasa tetap kelihatan sehingga pengguna boleh membetulkan masalah dan cuba lagi.
  4. Tambah kawalan Butang, tetapkan sifat Teks untuk menunjukkan Batal dan tetapkan sifat OnSelect untuk formula ini:

    ResetForm( EditForm ); Kembali()

    Apabila pengguna memilih butang Batal, nilai dalam kawalan Borang ditetapkan semula kepada yang sebelum pengguna mula mengeditnya, skrin sebelumnya muncul semula dan kawalan Borang dikembalikan ke mod Edit jika ia berada dalam mod Baharu.

  5. Tambah kawalan Butang, tetapkan sifat Teks untuk menunjukkan Baharu dan tetapkan sifat OnSelect untuk formula ini:

    NewForm( EditForm ); Navigasi( EditScreen, Tiada )

    Apabila pengguna memilih butang Baharu, kawalan Borang menukar ke mod Baharu, nilai lalai untuk sumber data kawalan Borang mengisi kawalan itu dan skrin yang mengandungi kawalan Borang akan muncul. Apabila fungsi SubmitForm dijalankan, rekod dicipta dan bukannya dikemas kini.