openForm (Referensi API Klien)

Membuka formulir entitas atau formulir pembuatan cepat.

Note

Untuk membuka formulir utama sebagai dialog, gunakan metode navigateTo sebagai gantinya. Informasi lebih lanjut: Buka formulir utama dalam dialog menggunakan API klien

Sintaksis

Xrm.Navigation.openForm(entityFormOptions, formParameters).then(successCallback, errorCallback);

Parameters

Name Type Diperlukan Description
entityFormOptions Objek Yes Opsi formulir untuk membuka formulir. Lihat objek entityFormOptions
formParameters Objek No Objek kamus yang meneruskan parameter tambahan ke formulir. Parameter yang tidak valid menyebabkan kesalahan.

Untuk informasi tentang meneruskan parameter ke formulir, lihat Mengatur nilai kolom menggunakan parameter yang diteruskan ke formulir dan Mengonfigurasi formulir untuk menerima parameter querystring kustom.
successCallback Fungsi No Fungsi untuk dijalankan saat rekaman disimpan dalam formulir buat cepat. Fungsi ini menerima objek sebagai parameter. Objek memiliki savedEntityReference array dengan properti berikut untuk mengidentifikasi rekaman yang ditampilkan atau dibuat:
- entityType: Nama logis tabel.
- id: Representasi string dari nilai GUID untuk rekaman.
- name: Nilai kolom utama rekaman yang ditampilkan atau dibuat.

CATATAN:
- Fungsi successCallback tidak dijalankan saat Anda membuka formulir untuk rekaman yang sudah ada atau baru.
- Fungsi successCallback dijalankan hanya ketika Anda menyimpan rekaman dalam formulir buat cepat yang dibuka menggunakan metode openForm.
errorCallback Fungsi No Fungsi yang akan dijalankan saat operasi gagal.

objek entityFormOptions

Objek berisi nilai berikut:

Name Type Diperlukan Description
entityName String Yes Nama logis tabel untuk menampilkan formulir.
entityId String No ID rekaman tabel untuk menampilkan formulir.
formId String No ID instans formulir yang akan ditampilkan.
cmdbar Bool No Menunjukkan apakah akan menampilkan bilah perintah. Jika Anda tidak menentukan parameter ini, bilah perintah ditampilkan secara default. Memerlukan parameter passing openInNewWindow sebagai true.
createFromEntity Pemeriksaan No Menunjuk rekaman yang menyediakan nilai default berdasarkan nilai kolom yang dipetakan. Objek pencarian memiliki properti String berikut: entityType, id, dan name (opsional).
openInNewWindow Bool No Menunjukkan apakah akan menampilkan formulir di jendela baru atau tab baru. Jika Anda menentukan true dan tidak menentukan nilai untuk tinggi atau lebar, formulir ditampilkan di tab baru. Membuka formulir di jendela baru atau tab baru membuat penyajian formulir lambat dibandingkan dengan membuka formulir pada tab yang sama; pertimbangkan untuk membuka formulir dalam dialog formulir utama sebagai gantinya. Properti ini saat ini tidak didukung untuk formulir Buat Cepat, karena tidak dapat dibuka di jendela atau tab baru.
height Nomor No Tinggi jendela formulir yang akan ditampilkan dalam piksel. Memerlukan parameter passing openInNewWindow sebagai true.
width Nomor No Lebar jendela formulir yang akan ditampilkan dalam piksel. Memerlukan parameter passing openInNewWindow sebagai true.
navbar String No Mengontrol apakah bilah navigasi ditampilkan dan apakah navigasi aplikasi tersedia menggunakan area dan subarea yang ditentukan dalam peta situs. Nilai yang valid adalah: on, , offatau entity. Memerlukan meneruskan parameter openInNewWindow sebagai true.
- on: Bilah navigasi ditampilkan. Ini adalah perilaku default jika parameter navbar tidak digunakan.
- off: Bilah navigasi tidak ditampilkan. Orang dapat menavigasi menggunakan elemen antarmuka pengguna lainnya atau tombol kembali dan maju.
- entity: Pada formulir, hanya opsi navigasi untuk tabel terkait yang tersedia. Setelah menavigasi ke tabel terkait, tombol kembali ditampilkan di bilah navigasi untuk memungkinkan kembali ke rekaman asli.
relationship Objek No Tentukan objek hubungan untuk menampilkan rekaman terkait pada formulir. Lihat objek hubungan
selectedStageId String No ID tahap yang dipilih dalam instans proses bisnis.
useQuickCreateForm Bool No Menunjukkan apakah akan membuka formulir buat cepat. Tabel harus mengaktifkan opsi Izinkan Buat Cepat agar formulir buat cepat ditampilkan dan Anda juga harus menambahkan tabel dan formulir buat cepat ke aplikasi Anda. Jika Anda tidak menentukan nilai useQuickCreateForm, default diatur ke false.

objek hubungan

Objek memiliki nilai berikut.

Name Type Description
attributeName String Nama kolom yang digunakan untuk hubungan.
name String Nama kolom yang digunakan untuk hubungan.
navigationPropertyName String Nama kolom yang digunakan untuk hubungan.
relationshipType Nomor Jenis hubungan. Tentukan salah satu nilai berikut:
- 0:OneToMany
- 1:ManyToMany
roleType Nomor Jenis peran dalam hubungan. Tentukan salah satu nilai berikut:
- 1:Referensi
- 2:AssociationEntity

Keterangan

Anda harus menggunakan metode ini untuk membuka tabel atau membuat formulir cepat alih-alih metode Xrm.Utility.openEntityForm dan Xrm.Utility.openQuickCreate yang tidak digunakan lagi.

Gunakan setActiveProcess untuk menampilkan proses bisnis tertentu dan setActiveProcessInstance untuk menampilkan instans proses bisnis tertentu pada formulir.

Contoh

Contoh 1: Buka formulir untuk rekaman yang sudah ada

Contoh kode berikut membuka formulir kontak untuk menampilkan rekaman kontak yang sudah ada:

var entityFormOptions = {};
entityFormOptions["entityName"] = "contact";
entityFormOptions["entityId"] = "00aa00aa-bb11-cc22-dd33-44ee44ee44ee";

// Open the form.
Xrm.Navigation.openForm(entityFormOptions).then(
    function (success) {
        console.log(success);
    },
    function (error) {
        console.log(error);
    });

Contoh 2: Buka formulir untuk rekaman baru

Contoh kode berikut membuka formulir kontak dengan beberapa nilai yang telah diisi sebelumnya untuk membuat rekaman baru:

var entityFormOptions = {};
entityFormOptions["entityName"] = "contact";

// Set default values for the Contact form
var formParameters = {};
formParameters["firstname"] = "Sample";
formParameters["lastname"] = "Contact";
formParameters["fullname"] = "Sample Contact";
formParameters["emailaddress1"] = "contact@adventure-works.com";
formParameters["jobtitle"] = "Sr. Marketing Manager";
formParameters["donotemail"] = "1";
formParameters["description"] = "Default values for this record were set programmatically.";

// Set lookup column
formParameters["preferredsystemuserid"] = "3493e403-fc0c-eb11-a813-002248e258e0"; // ID of the user.
formParameters["preferredsystemuseridname"] = "Admin user"; // Name of the user.
// End of set lookup column

// Open the form.
Xrm.Navigation.openForm(entityFormOptions, formParameters).then(
    function (success) {
        console.log(success);
    },
    function (error) {
        console.log(error);
    });

Contoh 3: Buka formulir untuk rekaman baru (pencarian kompleks)

Kode sampel berikut membuka formulir aktivitas dengan beberapa nilai yang telah diisi sebelumnya (termasuk pencarian kompleks) untuk membuat rekaman baru:

var entityFormOptions = {};
entityFormOptions["entityName"] = "email";

// Set default values for the Contact form
var formParameters = {};
formParameters["subject"] = "Sample";
formParameters["description"] = "Default values for this record were set programmatically.";

// Set lookup column
formParameters["regardingobjectid"] = "3493e403-fc0c-eb11-a813-002248e258e0"; // ID of the user.
formParameters["regardingobjectidname"] = "Admin user"; // Name of the user.
formParameters["regardingobjectidtype"] = "systemuser"; // Table name. 
// End of set lookup column

// Open the form.
Xrm.Navigation.openForm(entityFormOptions, formParameters).then(
    function (success) {
        console.log(success);
    },
    function (error) {
        console.log(error);
    });

Contoh 4: Buka formulir buat cepat

Contoh kode berikut membuka formulir kontak buat cepat dengan beberapa nilai yang telah diisi sebelumnya:

var entityFormOptions = {};
entityFormOptions["entityName"] = "contact";
entityFormOptions["useQuickCreateForm"] = true;

// Set default values for the Contact form
var formParameters = {};
formParameters["firstname"] = "Sample";
formParameters["lastname"] = "Contact";
formParameters["fullname"] = "Sample Contact";
formParameters["emailaddress1"] = "contact@adventure-works.com";
formParameters["jobtitle"] = "Sr. Marketing Manager";
formParameters["donotemail"] = "1";
formParameters["description"] = "Default values for this record were set programmatically.";

// Set lookup column
formParameters["preferredsystemuserid"] = "3493e403-fc0c-eb11-a813-002248e258e0"; // ID of the user.
formParameters["preferredsystemuseridname"] = "Admin user"; // Name of the user.
formParameters["preferredsystemuseridtype"] = "systemuser"; // Table name.
// End of set lookup column

// Open the form.
Xrm.Navigation.openForm(entityFormOptions, formParameters).then(
    function (success) {
        console.log(success);
    },
    function (error) {
        console.log(error);
    });

Xrm.Navigation