שתף דרך


openForm (חומר עזר עבור API של לקוח)

פתיחת טופס ישות או טופס יצירה מהירה.

הערה

כדי לפתוח טופס ראשי כתיבת דו-שיח, השתמש בפעולת השירות navigateTo במקום זאת. מידע נוסף: פתיחת טופס ראשי בתיבת דו-שיח באמצעות API של לקוח

תחביר

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

Parameters

שם סוג נדרש תיאור
entityFormOptions Object כן אפשרויות טופס לפתיחת הטופס. ראה אובייקט entityFormOptions
formParameters Object לא אובייקט מילון המעביר פרמטרים נוספים לטופס. פרמטרים לא חוקיים יגרמו לשגיאה.

לקבלת מידע אודות העברת פרמטרים לטופס, ראה הגדרת ערכי עמודות באמצעות פרמטרים שהועברו לטופס וקביעת תצורה של טופס לקבלת פרמטרים מותאמים אישית של מחרוזת שאילתה.
successCallback פונקציה לא פונקציה לביצוע כאשר הרשומה נשמרת בטופס היצירה המהירה. פונקציה זו מועברת על-ידי אובייקט כנמטר. האובייקט כולל מערך savedEntityReference עם המאפיינים הבאים כדי לזהות את הרשומות המוצגות או שנוצרו:
- entityType: השם הלוגי של הטבלה.
- id: ייצוג מחרוזת של ערך GUID עבור הרשומה.
- name: ערך העמודה הראשית של הרשומה המוצגת או נוצרה.

הערה:
- הפונקציה successCallback אינה מבוצעת בעת פתיחת טופס עבור רשומה קיימת או חדשה.
- הפונקציה successCallback מבוצעת רק בעת שמירת רשומה בטופס יצירה מהירה שנפתח באמצעות פעולת השירות openForm.
errorCallback פונקציה לא פונקציה לביצוע כאשר הפעולה נכשלת.

אובייקט entityFormOptions

האובייקט מכיל את הערכים הבאים:

שם סוג נדרש תיאור
entityName מחרוזת כן שם לוגי של הטבלה שעבורה יש להציג את הטופס.
entityId מחרוזת לא מזהה של רשומת הטבלה שעבורה יש להציג את הטופס.
formId מחרוזת לא מזהה מופע הטופס שיש להציג.
cmdbar בול לא מציין אם להציג את סרגל הפקודות. אם לא תציין פרמטר זה, סרגל הפקודות יוצג כברירת מחדל. דורש פרמטר openInNewWindow עובר כ- True.
createFromEntity בדיקת מידע לא הגדרת רשומה שתספק ערכי ברירת מחדל בהתבסס על ערכי עמודות ממופים. אובייקט בדיקת המידע כולל את מאפייני המחרוזת הבאים: entityType, id, ו- name (אופציונלי).
openInNewWindow בול לא ציון אם להציג טופס בחלון חדש או בכרטיסיה חדשה. true אם תציין ולא תציין ערכים עבור גובה או רוחב, הטופס יוצג בכרטיסיה חדשה. פתיחת טופס בחלון חדש או בכרטיסיה חדשה מאטה את עיבוד הטופס בהשוואה לפתיחת הטופס באותה כרטיסיה; שקול לפתוח טופס בתיבת הדו-שיח של הטופס הראשי במקום זאת. מאפיין זה אינו נתמך כעת עבור טפסי יצירה מהירה, מאחר שלא ניתן לפתוח אותם בחלון או בכרטיסיה חדשים.
height מספר לא גובה חלון הטופס שיוצג בפיקסלים. דורש פרמטר openInNewWindow עובר כ- True.
width מספר לא רוחב חלון הטופס שיוצג בפיקסלים. דורש פרמטר openInNewWindow עובר כ- True.
navbar מחרוזת לא קובע אם סרגל הניווט מוצג ואם ניווט ביישום זמין באמצעות האזורים ואזורי המשנה המוגדרים במפת האתר. הערכים החוקיים הם: on, off, או entity. נדרשת העברת פרמטר openInNewWindow כ- True.
- on: סרגל הניווט מוצג. זהו אופן הפעולה המהווה ברירת מחדל אם לא נעשה שימוש בפרמטר navbar.
- off: סרגל הניווט אינו מוצג. אנשים יכולים לנווט באמצעות רכיבי ממשק משתמש אחרים או הלחצנים 'אחורה וקדימה'.
- entity: בטופס, זמינות רק אפשרויות הניווט עבור טבלאות קשורות. לאחר ניווט לטבלה קשורה, יוצג לחצן 'הקודם' בסרגל הניווט כדי לאפשר חזרה אל הרשומה המקורית.
relationship Object לא הגדר אובייקט קשר גומלין כדי להציג את הרשומות הקשורות בטופס. ראה אובייקט קשר גומלין
selectedStageId מחרוזת לא מזהה השלב שנבחר במופע תהליך עסקי.
useQuickCreateForm בול לא מציין אם לפתוח טופס יצירה מהירה. כדי שהאפשרות ' אפשר יצירה מהירה ' חייבת להיות זמינה בטבלה, יש להציג את טופס היצירה המהירה, ועליך גם להוסיף את הטבלה ואת טופס היצירה המהירה ליישום שלך. אם לא תציין את הערך של useQuickCreateForm, ברירת המחדל תוגדר ל- false.

אובייקט קשר גומלין

האובייקט מכיל את הערכים הבאים.

שם סוג תיאור
attributeName מחרוזת שם העמודה המשמשת עבור קשר גומלין.
name מחרוזת שם העמודה המשמשת עבור קשר גומלין.
navigationPropertyName מחרוזת שם העמודה המשמשת עבור קשר גומלין.
relationshipType מספר סוג קשר. ציין אחד מהערכים הבאים:
- 0:OneToMany
- 1:ManyToMany
roleType מספר סוג תפקיד בקשר גומלין. ציין אחד מהערכים הבאים:
- 1:הפניה
- 2:AssociationEntity

הערות

עליך להשתמש בשיטה זו כדי לפתוח טפסי טבלה או יצירה מהירה במקום פעולות השירות Xrm.Utility.openEntityForm ו- Xrm.Utility.openQuickCreate שהוצאה משימוש.

השתמש ב- setActiveProcess כדי להציג תהליך עסקי מסוים ולהגדיר אתActiveProcessInstance כדי להציג מופע מסוים של תהליך עסקי בטופס.

דוגמאות

דוגמה 1: פתיחת טופס עבור רשומה קיימת

הקוד לדוגמה הבא פותח טופס איש קשר כדי להציג רשומת איש קשר קיימת:

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

דוגמה 2: פתיחת טופס עבור רשומה חדשה

הקוד לדוגמה הבא פותח טופס איש קשר עם ערכים מאוכלסים מראש מסוימים כדי ליצור רשומה חדשה:

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

דוגמה 3: פתיחת טופס עבור רשומה חדשה (בדיקת מידע מורכבת)

הקוד לדוגמה הבא פותח טופס פעילות עם ערכים מאוכלסים מראש מסוימים (כולל בדיקת מידע מורכבת) כדי ליצור רשומה חדשה:

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

דוגמה 4: פתיחת טופס יצירה מהירה

הקוד לדוגמה הבא פותח טופס יצירת איש קשר מהיר עם ערכים מאוכלסים מראש מסוימים:

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