Κοινοποίηση μέσω


updateRecord (αναφορά API προγράμματος-πελάτη)

Ενημερώνει μια εγγραφή πίνακα.

Σύνταξη

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

Παράμετροι

'Ονομα Type Απαραίτητο Περιγραφή
entityLogicalName Συμβλοσειρά Ναι Το λογικό όνομα πίνακα της εγγραφής που θέλετε να ενημερώσετε. Για παράδειγμα: account.
id Συμβλοσειρά Ναι GUID της εγγραφής πίνακα που θέλετε να ενημερώσετε.
data Αντικείμενο Ναι Ένα αντικείμενο JSON που περιέχει ζεύγη key: value , όπου key είναι η ιδιότητα του πίνακα και value είναι η τιμή της ιδιότητας που θέλετε να ενημερώσετε.
Ανατρέξτε στα Παραδείγματα για να δείτε πώς μπορείτε να ορίσετε το data αντικείμενο για διάφορα σενάρια ενημέρωσης.
successCallback Function Όχι Μια συνάρτηση που καλείται όταν ενημερώνεται μια εγγραφή. Ανατρέξτε στο θέμα Τιμή επιστροφής
errorCallback Function Όχι Μια λειτουργία για κλήση όταν αποτύχει η λειτουργία. Διαβιβάζεται ένα αντικείμενο με τις ακόλουθες ιδιότητες:
- errorCode:Αριθμός. Ο κωδικός σφάλματος ως θετικός δεκαδικός αριθμός. Για παράδειγμα, ο κωδικός σφάλματος που τεκμηριώνεται ως 0x80040333 θα επιστραφεί ως 2147746611.
- message:Σειρά. Ένα μήνυμα λάθους που περιγράφει το ζήτημα.

Τιμή επιστροφής

Με επιτυχία, επιστρέφει ένα αντικείμενο υπόσχεσης στο successCallback με τις ακόλουθες ιδιότητες:

'Ονομα Type Περιγραφή
entityType Συμβλοσειρά Το λογικό όνομα πίνακα της εγγραφής.
id Συμβλοσειρά GUID της εγγραφής.

Παραδείγματα

Αυτά τα παραδείγματα χρησιμοποιούν ορισμένα από τα ίδια αντικείμενα αίτησης, όπως φαίνεται στην ενότητα Ενημέρωση και διαγραφή γραμμών πίνακα με χρήση του Web API για τον ορισμό του αντικειμένου δεδομένων για την ενημέρωση μιας εγγραφής πίνακα.

Βασική ενημέρωση

Ενημερώνει μια υπάρχουσα εγγραφή λογαριασμού με αναγνωριστικό εγγραφής = 5531d753-95af-e711-a94e-000d3a11e605.

// define the data to update a record
var data =
    {
        "name": "Updated Sample Account ",
        "creditonhold": true,
        "address1_latitude": 47.639583,
        "description": "This is the updated description of the sample account",
        "revenue": 6000000,
        "accountcategorycode": 2
    }
// update the record
Xrm.WebApi.updateRecord("account", "5531d753-95af-e711-a94e-000d3a11e605", data).then(
    function success(result) {
        console.log("Account updated");
        // perform operations on record update
    },
    function (error) {
        console.log(error.message);
        // handle error conditions
    }
);

Για να ενημερώσετε τη συσχέτιση με τις σχετικές εγγραφές πίνακα (αναζητήσεις), ορίστε την τιμή των ιδιοτήτων περιήγησης μίας τιμής χρησιμοποιώντας το @odata.bind σχόλιο σε μια άλλη εγγραφή.

Ακολουθεί παράδειγμα κώδικα:

Το παρακάτω παράδειγμα ενημερώνει μια εγγραφή λογαριασμού για να συσχετίσει μια άλλη εγγραφή επαφής ως την κύρια επαφή για τον λογαριασμό:

// define the data to update a record
var data =
    {
        "primarycontactid@odata.bind": "/contacts(61a0e5b9-88df-e311-b8e5-6c3be5a8b200)"
    }
// update the record
Xrm.WebApi.updateRecord("account", "5531d753-95af-e711-a94e-000d3a11e605", data).then(
    function success(result) {
        console.log("Account updated");
        // perform operations on record update
    },
    function (error) {
        console.log(error.message);
        // handle error conditions
    }
);

Υπό απόσυρση μέθοδος για σενάριο για κινητές συσκευές εκτός σύνδεσης

Σημείωμα

Αντί να χρησιμοποιήσετε @odata.bind το παραπάνω παράδειγμα σχολιασμού, το υπό απόσυρση αντικείμενο αναζήτησης με ιδιότητες με διάκριση πεζών-κεφαλαίων (logicalname και id) εξακολουθεί να υποστηρίζεται για υπερβολικές προσαρμογές. Ωστόσο, συνιστάται η χρήση @odata.bind σχολίων για σενάριο σύνδεσης και εκτός σύνδεσης αντί για τη χρήση αυτού του υπό απόσυρση αντικειμένου.

Το παρακάτω παράδειγμα χρησιμοποιεί την υπό απόσυρση μέθοδο για την ενημέρωση μιας εγγραφής λογαριασμού για τη συσχέτιση μιας άλλης εγγραφής επαφής ως την κύρια επαφή για τον λογαριασμό από προγράμματα-πελάτες κινητής συσκευής όταν εργάζεστε σε λειτουργία χωρίς σύνδεση:

// define the data to update a record
var data =
    {
        "primarycontactid":
        {
            "logicalname": "contact",
            "id": "61a0e5b9-88df-e311-b8e5-6c3be5a8b200"
        }
    }
// update the record
Xrm.WebApi.offline.updateRecord("account", "5531d753-95af-e711-a94e-000d3a11e605", data).then(
    function success(result) {
        console.log("Account updated");
        // perform operations on record update
    },
    function (error) {
        console.log(error.message);
        // handle error conditions
    }
);

Για να ενημερώσετε τη συσχέτιση με τους σχετικούς πίνακες τύπου Δραστηριότητα, ορίστε την τιμή των ιδιοτήτων περιήγησης μίας τιμής χρησιμοποιώντας το @odata.bind σχόλιο σε μια άλλη εγγραφή.

Ενημέρωση σχετικής στήλης ευκαιριών κατά την εργασία

// define the data to update a record
var data =
    {
        "new_relatedopportunities_task@odata.bind": "/opportunities(61a0e5b9-88df-e311-b8e5-6c3be5a8b200)"
    }
// update the record
Xrm.WebApi.updateRecord("task", "5531d753-95af-e711-a94e-000d3a11e605", data).then(
    function success(result) {
        console.log("Task updated");
        // perform operations on record update
    },
    function (error) {
        console.log(error.message);
        // handle error conditions
    }
);

Ενημέρωση στήλης "Σχετικά με" στην εργασία

// define the data to update a record
var data =
   {
       "regardingobjectid_account_task@odata.bind": "/accounts(61a0e5b9-88df-e311-b8e5-6c3be5a8b200)"
   }
// update the record
Xrm.WebApi.updateRecord("task", "5531d753-95af-e711-a94e-000d3a11e605", data).then(
   function success(result) {
       console.log("Task updated");
       // perform operations on record update
   },
   function (error) {
       console.log(error.message);
       // handle error conditions
   }
);

Ενημέρωση συσχετισμών για ιδιότητες περιήγησης με τιμή συλλογής

Το API Xrm.WebApi.online.execute μπορεί να χρησιμοποιηθεί για τη συσχέτιση και κατάργηση συσχέτισης ιδιοτήτων περιήγησης με τιμές συλλογής. Αυτό ΔΕΝ υποστηρίζεται για σενάρια mobile offline.

Xrm.WebApi