Partajați prin


openForm (Referință API client)

Deschide un formular de entitate sau un formular de creare rapidă.

Notă

Pentru a deschide un formular principal ca casetă de dialog, utilizați în schimb metoda navigareLa . Mai multe informații: Deschideți formularul principal într-un dialog folosind API-ul client

Sintaxă

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

Parametrii

Nume Tip Obligatoriu Descriere
entityFormOptions Obiect Da Opțiuni formular pentru deschiderea formularului. Vedeți obiectul entityFormOptions
formParameters Obiect Nu Un obiect dicționar care transmite parametri suplimentari formularului. Parametrii nevalidi vor cauza o eroare.

Pentru informații despre trecerea parametrilor la un formular, consultați Setarea valorilor de coloană utilizând parametri transmiși unui formular și Configurarea unui formular pentru a accepta parametri de interogare particularizați.
successCallback Funcţie Nu O funcție de executat atunci când înregistrarea este salvată în formularul de creare rapidă. Această funcție este transmisă ca parametru un obiect. Obiectul are o savedEntityReference matrice cu următoarele proprietăți pentru a identifica înregistrările afișate sau create:
- entityType: Numele logic al tabelului.
- id: O reprezentare șir a unei valori GUID pentru înregistrare.
- name: Valoarea principală a coloanei înregistrării afișate sau create.

NOTĂ:
- Funcția successCallback nu este executată atunci când deschideți un formular pentru o înregistrare existentă sau nouă.
- Funcția successCallback este executată numai atunci când salvați o înregistrare într-un formular de creare rapidă care a fost deschis utilizând metoda openForm.
errorCallback Funcţie Nu O funcție de executat atunci când operațiunea eșuează.

entityFormOptions object

Obiectul conține următoarele valori:

Nume Tip Obligatoriu Descriere
entityName Șir Da Numele logic al tabelului pentru care se afișează formularul.
entityId Șir Nu ID-ul înregistrării de tabel pentru care se afișează formularul.
formId Șir Nu ID-ul instanței formularului de afișat.
cmdbar Bool Nu Indică dacă se afișează bara de comenzi. Dacă nu specificați acest parametru, bara de comenzi este afișată în mod implicit. Necesită parametrul de trecere openInNewWindow ca adevărat.
createFromEntity Căutare Nu Desemnează o înregistrare care va furniza valori implicite pe baza valorilor de coloană mapate. Obiectul de căutare are următoarele proprietăți șir: entityType, idși name (opțional).
openInNewWindow Bool Nu Arată dacă să se afișeze formularul într-o fereastră nouă sau într-o filă nouă. Dacă specificați și nu specificați true valori pentru înălțime sau lățime, formularul se va afișa într-o filă nouă. Deschiderea unui formular într-o fereastră nouă sau într-o filă nouă face redarea formularului mai lent comparativ cu deschiderea formularului pe aceeași filă; luați în considerare deschiderea unui formular în caseta de dialog formular principal. Această proprietate nu este acceptată în prezent pentru formularele Creare rapidă, deoarece nu se poate deschide într-o fereastră nouă sau într-o filă nouă.
height Număr Nu Înălțimea ferestrei formularului care urmează să fie afișată în pixeli. Necesită parametrul de trecere openInNewWindow ca adevărat.
width Număr Nu Lățimea ferestrei formularului care trebuie afișată în pixeli. Necesită parametrul de trecere openInNewWindow ca adevărat.
navbar Șir Nu Controlează dacă bara de navigare este afișată și dacă navigarea aplicației este disponibilă utilizând zonele și subzonele definite în harta site-ului. Valorile valide sunt: on, off, sau entity. Necesită trecerea parametrul openInNewWindow ca adevărat.
- on: Se afișează bara de navigare. Acesta este comportamentul implicit dacă parametrul barei de navigare nu este utilizat.
- off: Bara de navigare nu se afișează. Oamenii pot naviga folosind alte elemente ale interfeței cu utilizatorul sau butoanele înapoi și înainte.
- entity: Într-un formular, sunt disponibile doar opțiunile de navigare pentru tabelele asociate. După navigarea la un tabel asociat, se afișează un buton înapoi în bara de navigare pentru a permite revenirea la înregistrarea originală.
relationship Obiect Nu Definiți un obiect relație pentru a afișa înregistrările asociate în formular. Vedeți obiectul relației
selectedStageId Șir Nu ID-ul etapei selectate în instanța de proces de afaceri.
useQuickCreateForm Bool Nu Arată dacă să se deschidă un formular de creare rapidă. Tabelul trebuie să aibă opțiunea Se permite crearea rapidă activată pentru afișarea formularului de creare rapidă și, de asemenea, trebuie să adăugați tabelul și formularul de creare rapidă în aplicație. Dacă nu specificați valoarea useQuickCreateForm, valoarea implicită va fi setată la false.

obiect relație

Obiectul are următoarele valori.

Nume Tip Descriere
attributeName Șir Numele coloanei utilizate pentru relație.
name Șir Numele coloanei utilizate pentru relație.
navigationPropertyName Șir Numele coloanei utilizate pentru relație.
relationshipType Număr Tipul de relație. Specificați una dintre următoarele valori:
- 0:OneToMany
- 1:ManyToMany
roleType Număr Tipul de rol în relație. Specificați una dintre următoarele valori:
- 1:Referințe
- 2:AssociationEntity

Remarci

Trebuie să utilizați această metodă pentru a deschide tabelul sau a crea rapid formulare în loc de metodele Xrm.Utility.openEntityForm și Xrm.Utility.openQuickCreate .

Utilizați setActiveProcess pentru a afișa un anumit proces de afaceri și a setaActiveProcessInstance pentru a afișa o anumită instanță de proces de afaceri în formular.

Exemple

Exemplul 1: Deschiderea unui formular pentru înregistrarea existentă

Următorul cod eșantion deschide un formular de persoană de contact pentru a afișa o înregistrare de persoană de contact existentă:

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

Exemplul 2: Deschiderea unui formular pentru o înregistrare nouă

Următorul cod eșantion deschide un formular de persoană de contact cu unele valori prepopulate pentru a crea o înregistrare nouă:

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

Exemplul 3: Deschiderea unui formular pentru o înregistrare nouă (căutare complexă)

Următorul cod eșantion deschide un formular de activitate cu unele valori prepopulate (inclusiv o căutare complexă) pentru a crea o înregistrare nouă:

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

Exemplul 4: Deschiderea unui formular de creare rapidă

Următorul cod eșantion deschide un formular de creare rapidă a unei persoane de contact cu unele valori prepopulate:

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