שתף דרך


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

יצירת רשומת טבלה.

תחביר

Xrm.WebApi.createRecord(entityLogicalName, data).then(successCallback, errorCallback);

Parameters

שם Type נדרש תיאור‬‏‫‬
entityLogicalName String כן שם לוגי של הטבלה שברצונך ליצור. לדוגמה: account.
data Object כן אובייקט JSON המ להגדיר את העמודות והערכים עבור רשומת הטבלה החדשה. ראה דוגמאות
successCallback פונקציה לא פונקציה שיש לקרוא לה בעת יצירת רשומה. ראה ערך החזרה
errorCallback פונקציה לא פונקציה שיש לקרוא לה כאשר הפעולה נכשלת. אובייקט עם המאפיינים הבאים מועבר:
- errorCode:מספר. קוד השגיאה כמספר עשרוני חיובי. לדוגמה, קוד השגיאה שתועד כפי 0x80040333 שהוא יוחזר בתור 2147746611.
- message:מחרוזת. הודעת שגיאה המתארת את הבעיה.

ערך החזרה

בעת הצלחה, החזרת אובייקט promise ל- successCallback עם המאפיינים הבאים:

שם Type תיאור‬‏‫‬
entityType String השם הלוגי של הטבלה של הרשומה החדשה.
id String GUID של הרשומה החדשה.

דוגמאות

דוגמאות אלה משתמשות באותם אובייקטי בקשה כפי שהודגם ביצירת שורת טבלה באמצעות ה- API של האינטרנט להגדרת אובייקט הנתונים ליצירת רשומת טבלה.

יצירה בסיסית

יצירת רשומת חשבון לדוגמה.

// define the data to create new account
var data =
    {
        "name": "Sample Account",
        "creditonhold": false,
        "address1_latitude": 47.639583,
        "description": "This is the description of the sample account",
        "revenue": 5000000,
        "accountcategorycode": 1,
        "opendeals_date": new Date("2024-02-03T00:00:00Z")
    }

// create account record
Xrm.WebApi.createRecord("account", data).then(
    function success(result) {
        console.log("Account created with ID: " + result.id);
        // perform operations on record creation
    },
    function (error) {
        console.log(error.message);
        // handle error conditions
    }
);

הערה

יצירת רשומות עם תמונה ראשית אינה נתמכת עבור מצב לא מקוון. ניתן להגדיר תמונות ראשיות רק עם יצירה במצב מקוון. אין אפשרות להגדיר עמודות תמונה אחרות עם יצירה. קבל מידע נוסף אודות תמונות ראשיות

באפשרותך ליצור טבלאות הקשורות זו לזה על-ידי הגדרתן כנערכים של מאפייני ניווט. תבנית זו נקראת הוספה עמוקה. בדוגמה זו, אנו יוצרים רשומת תיק לקוח לדוגמה יחד עם רשומת איש הקשר הראשית ו רשומת הזדמנות משויכת.

הערה

יצירת רשומות טבלה קשורות בפעולה אחת של יצירה אינה נתמכת עבור מצב לא מקוון.

// define data to create primary and related table records
var data =
    {
        "name": "Sample Account",
        "primarycontactid":
        {
            "firstname": "John",
            "lastname": "Smith"
        },
        "opportunity_customer_accounts":
        [
            {
                "name": "Opportunity associated to Sample Account",
                "Opportunity_Tasks":
                [
                    { "subject": "Task associated to opportunity" }
                ]
            }
        ]
    }

// create account record
Xrm.WebApi.createRecord("account", data).then(
    function success(result) {
        console.log("Account created with ID: " + result.id);
        // perform operations on record creation
    },
    function (error) {
        console.log(error.message);
        // handle error conditions
    }
);

שיוך טבלאות ליצירת רשומות חדשות

כדי לשייך רשומות טבלה חדשות לרשומות טבלה קיימות, הגדר את הערך של מאפייני ניווט עם ערך יחיד באמצעות @odata.bind הביאור.

הערה

השמות של מאפייני ניווט בעלי ערך יחיד אינם זהים תמיד לשמות של LogicalName תכונת בדיקת המידע. עליך לוודא שאתה משתמש בערך התכונה Name של הרכיב ב- NavigationProperty API של האינטרנט כדי $metadata השירות. מידע נוסף: מאפייני ניווט של Web API

להלן קוד לדוגמה:

הדוגמה הבאה יוצרת רשומת תיק לקוח ומשייך אותה אל רשומת איש קשר קיימת כדי להגדיר את איש הקשר האחרון כ איש הקשר הראשי עבור רשומת החשבון החדשה:

var data =
    {
        "name": "Sample Account",
        "primarycontactid@odata.bind": "/contacts(465b158c-541c-e511-80d3-3863bb347ba8)"
    }

// create account record
Xrm.WebApi.createRecord("account", data).then(
    function success(result) {
        console.log("Account created with ID: " + result.id);
        // perform operations on record creation
    },
    function (error) {
        console.log(error.message);
        // handle error conditions
    }
);

שיטה הוצאה משימוש עבור תרחיש לא מקוון למכשירים ניידים

הערה

במקום להשתמש בדוגמה @odata.bind לביאור שהוצגה קודם לכן, אובייקט בדיקת המידע שהוצאה משימוש עם מאפיינים תלויי רישיות (logicalnameidו- ) עדיין נתמך בהתאמות אישיות קיימות. עם זאת, מומלץ להשתמש לביאור @odata.bind הן עבור תרחיש מקוון והן עבור תרחיש לא מקוון במקום להשתמש באובייקט זה שהוצאה משימוש.

הדוגמה הבאה משתמשת בשיטה שהוצאה משימוש כדי ליצור רשומת תיק לקוח, ולשייך אותה אל רשומת איש קשר קיימת כדי להגדיר את איש הקשר האחרון כ איש הקשר הראשי עבור רשומת החשבון החדשה מהלקוחות הניידים בעת עבודה במצב לא מקוון:

var data =
    {
        "name": "Sample Account",
        "primarycontactid":
        {
            "logicalname": "contact",
            "id": "465b158c-541c-e511-80d3-3863bb347ba8"
        } 
    }

// create account record
Xrm.WebApi.offline.createRecord("account", data).then(
    function success(result) {
        console.log("Account created with ID: " + result.id);
        // perform operations on record creation
    },
    function (error) {
        console.log(error.message);
        // handle error conditions
    }
);

יצירת שורת טבלה באמצעות ה- API של האינטרנט
Xrm.WebApi