openForm (İstemci API başvurusu)

Bir varlık formu veya hızlı oluşturma formu açar.

Uyarı

Ana formu iletişim kutusu olarak açmak için bunun yerine navigateTo yöntemini kullanın. Daha fazla bilgi: İstemci API'sini kullanarak ana formu iletişim kutusunda açma

Syntax

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

Parameters

Name Type Gerekli Açıklama
entityFormOptions Nesne Yes Formu açmak için form seçenekleri. Bkz . entityFormOptions nesnesi
formParameters Nesne No Forma ek parametreler geçiren bir sözlük nesnesi. Geçersiz parametreler hataya neden olur.

Parametreleri forma geçirme hakkında bilgi için bkz. Forma geçirilen parametreleri kullanarak sütun değerlerini ayarlama ve Formu özel sorgu dizesi parametrelerini kabul etmek için yapılandırma.
successCallback İşlev No Kayıt hızlı oluşturma formuna kaydedildiğinde yürütülecek bir işlev. Bu işlev bir nesneyi parametre olarak kabul eder. Nesne, görüntülenen veya oluşturulan kayıtları tanımlamak için aşağıdaki özelliklere sahip bir savedEntityReference diziye sahiptir:
- entityType: Tablonun mantıksal adı.
- id: Kayıt için GUID değerinin dize gösterimi.
- name: Görüntülenen veya oluşturulan kaydın birincil sütun değeri.

NOT:
- Mevcut successCallback veya yeni bir kayıt için form açtığınızda işlev yürütülemez.
- İşlev successCallback yalnızca openForm yöntemi kullanılarak açılan bir hızlı oluşturma formuna kayıt kaydettiğinizde yürütülür.
errorCallback İşlev No İşlem başarısız olduğunda yürütülecek bir işlev.

entityFormOptions nesnesi

nesnesi aşağıdaki değerleri içerir:

Name Type Gerekli Açıklama
entityName Dize Yes Formun görüntüleneceği tablonun mantıksal adı.
entityId Dize No Formun görüntüleneceği tablo kaydının kimliği.
formId Dize No Görüntülenecek form örneğinin kimliği.
cmdbar Boole No Komut çubuğunun görüntülenip görüntülenmeyeceğini belirtir. Bu parametreyi belirtmezseniz, komut çubuğu varsayılan olarak görüntülenir. Parametrenin openInNewWindow true olarak geçirilmesini gerektirir.
createFromEntity Arama Listesi No Eşlenmiş sütun değerlerine göre varsayılan değerler sağlayan bir kayıt belirleyin. Arama nesnesi şu Dize özelliklerine sahiptir: entityType, idve name (isteğe bağlı).
openInNewWindow Boole No Formun yeni bir pencerede mi yoksa yeni bir sekmede mi görüntüleneceğini gösterir. Yükseklik veya genişlik değerlerini belirtir true ve belirtmezseniz, form yeni bir sekmede görüntülenir. Formun yeni bir pencerede veya yeni bir sekmede açılması, formun aynı sekmede açılmasına kıyasla yavaş işlenmesini sağlar; bunun yerine ana form iletişim kutusunda bir form açmayı düşünün. Bu özellik, yeni bir pencerede veya sekmede açılamadığından Hızlı Oluşturma formları için şu anda desteklenmemektedir.
height Sayı No Piksel cinsinden görüntülenecek form penceresinin yüksekliği. Parametrenin openInNewWindow true olarak geçirilmesini gerektirir.
width Sayı No Piksel cinsinden görüntülenecek form penceresinin genişliği. Parametrenin openInNewWindow true olarak geçirilmesini gerektirir.
navbar Dize No Gezinti çubuğunun görüntülenip görüntülenmeyeceğini ve site haritasında tanımlanan alanlar ve alt alanlar kullanılarak uygulama gezintisinin kullanılabilir olup olmadığını kontrol eder. Geçerli değerler şunlardır: on, offveya entity. openInNewWindow parametresinin true olarak geçirilmesini gerektirir.
- on: Gezinti çubuğu görüntülenir. Gezinti çubuğu parametresi kullanılmıyorsa bu varsayılan davranıştır.
- off: Gezinti çubuğu görüntülenmez. Kişiler, diğer kullanıcı arabirimi öğelerini veya geri ve ileri düğmelerini kullanarak gezinebilir.
- entity: Formda, yalnızca ilgili tablolar için gezinti seçenekleri kullanılabilir. İlgili bir tabloya gittikten sonra, özgün kayda geri dönmek için gezinti çubuğunda bir geri düğmesi görüntülenir.
relationship Nesne No Formda ilgili kayıtları görüntülemek için bir ilişki nesnesi tanımlayın. bkz. ilişki nesnesi
selectedStageId Dize No İş süreci örneğinde seçili aşamanın kimliği.
useQuickCreateForm Boole No Hızlı oluşturma formunun açılıp açılmayacağını gösterir. Hızlı oluşturma formunun görüntülenmesi için tabloda Hızlı Oluşturma'ya İzin Ver seçeneğinin etkinleştirilmesi ve ayrıca tabloyu ve hızlı oluşturma formunu uygulamanıza eklemeniz gerekir. değerini useQuickCreateFormbelirtmezseniz, varsayılan olarak ayarlanır false.

ilişki nesnesi

nesnesi aşağıdaki değerlere sahiptir.

Name Type Açıklama
attributeName Dize İlişki için kullanılan sütunun adı.
name Dize İlişki için kullanılan sütunun adı.
navigationPropertyName Dize İlişki için kullanılan sütunun adı.
relationshipType Sayı İlişki türü. Aşağıdaki değerlerden birini belirtin:
- 0:OneToMany
- 1:ManyToMany
roleType Sayı İlişkideki rol türü. Aşağıdaki değerlerden birini belirtin:
- 1:Başvuru
- 2:AssociationEntity

Açıklamalar

Kullanım dışı bırakılan Xrm.Utility.openEntityForm ve Xrm.Utility.openQuickCreate yöntemleri yerine tablo veya hızlı form oluşturmak için bu yöntemi kullanmanız gerekir.

Belirli bir iş sürecini görüntülemek için setActiveProcess ve formda belirli bir iş süreci örneğini görüntülemek için setActiveProcessInstance kullanın.

Örnekler

Örnek 1: Varolan kayıt için form açma

Aşağıdaki örnek kod, var olan bir kişi kaydını görüntülemek için bir kişi formu açar:

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);
    });

Örnek 2: Yeni kayıt için form açma

Aşağıdaki örnek kod, yeni kayıt oluşturmak için önceden doldurulmuş bazı değerleri içeren bir kişi formu açar:

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);
    });

Örnek 3: Yeni kayıt için form açma (karmaşık arama)

Aşağıdaki örnek kod, yeni bir kayıt oluşturmak için önceden doldurulmuş bazı değerleri (karmaşık arama dahil) içeren bir etkinlik formu açar:

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);
    });

Örnek 4: Hızlı oluşturma formu açma

Aşağıdaki örnek kod, önceden doldurulmuş bazı değerlerle hızlı bir kişi oluşturma formu açar:

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