Bagikan melalui


openForm (Referensi API Klien)

Membuka formulir entitas atau formulir pembuatan cepat.

Nota

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

Syntax

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

Parameter-parameternya

Nama Tipe Diperlukan Description
entityFormOptions Objek Yes Opsi formulir untuk membuka formulir. Lihat objek entityFormOptions
formParameters Objek Tidak. Objek kamus yang meneruskan parameter tambahan ke formulir. Parameter yang tidak valid akan 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 Function Tidak. Fungsi untuk dijalankan saat rekaman disimpan dalam formulir buat cepat. Fungsi ini diteruskan 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 ini tidak dijalankan ketika 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 Function Tidak. Fungsi yang akan dijalankan saat operasi gagal.

objek entityFormOptions

Objek berisi nilai berikut:

Nama Tipe Diperlukan Description
entityName String Yes Nama logis tabel untuk menampilkan formulir.
entityId String Tidak. ID rekaman tabel untuk menampilkan formulir.
formId String Tidak. ID instans formulir yang akan ditampilkan.
cmdbar Bool Tidak. 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 Tidak. Menunjuk rekaman yang akan menyediakan nilai default berdasarkan nilai kolom yang dipetakan. Objek pencarian memiliki properti String berikut: entityType, id, dan name (opsional).
openInNewWindow Bool Tidak. Menunjukkan apakah akan menampilkan formulir di jendela baru atau tab baru. Jika Anda menentukan true dan tidak menentukan nilai untuk tinggi atau lebar, formulir akan 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 Number Tidak. Tinggi jendela formulir yang akan ditampilkan dalam piksel. Memerlukan parameter passing openInNewWindow sebagai true.
width Number Tidak. Lebar jendela formulir yang akan ditampilkan dalam piksel. Memerlukan parameter passing openInNewWindow sebagai true.
navbar String Tidak. 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 Tidak. Tentukan objek hubungan untuk menampilkan rekaman terkait pada formulir. Lihat objek hubungan
selectedStageId String Tidak. ID tahap yang dipilih dalam instans proses bisnis.
useQuickCreateForm Bool Tidak. 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 akan diatur ke false.

objek hubungan

Objek memiliki nilai berikut.

Nama Tipe 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 Number Jenis hubungan. Tentukan salah satu nilai berikut:
- 0:OneToMany
- 1:ManyToMany
roleType Number Jenis peran dalam hubungan. Tentukan salah satu nilai berikut:
- 1:Referensi
- 2:AssociationEntity

Komentar

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.

Examples

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)

Contoh kode 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