Σημείωμα
Η πρόσβαση σε αυτήν τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να εισέλθετε ή να αλλάξετε καταλόγους.
Η πρόσβαση σε αυτήν τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να αλλάξετε καταλόγους.
Χρησιμοποιήστε τις μεθόδους ενεργειών και συναρτήσεων του dataApi αντικειμένου για να καλέσετε τα προσαρμοσμένα API του Dataverse που είναι συνδεδεμένα στη σελίδα.
Σημείωμα
Οι μέθοδοι ενεργειών και συναρτήσεων είναι προαιρετικές στο κοινόχρηστο dataApi συμβόλαιο. Ορισμένοι κεντρικοί υπολογιστές δεν τους υλοποιούν, επομένως ελέγξτε ότι υπάρχει μια μέθοδος πριν την κλήση της. Μια παρούσα μέθοδος δεν σημαίνει ότι η λειτουργία συνδέεται στη σελίδα, ενεργοποιείται για τον χρόνο εκτέλεσης ή επιτρέπεται στον τρέχοντα χρήστη. Σε αντίθεση με τις μεθόδους σύνδεσης, αυτές οι μέθοδοι δεν εκτελούνται ποτέ για αναμενόμενες αποτυχίες. Επιλύονται με ok: false το και με έναν κωδικό σφάλματος. Χειριστείτε ρητά τις ιδιότητες και error του αποτελέσματοςok.
listBoundActions Η επιστρέφει τις ενέργειες και τις συναρτήσεις που επιτρέπει η τρέχουσα ρύθμιση παραμέτρων χρόνου εκτέλεσης για τη σελίδα, όταν αυτός ο εντοπισμός είναι ενεργοποιημένος. Δεν αποτελεί εγγύηση ότι ο τρέχων χρήστης διατηρεί τα δικαιώματα Dataverse που απαιτούνται για την εκτέλεση κάθε λειτουργίας που παρατίθεται.
| Μέθοδος | Περιγραφή |
|---|---|
executeAction |
Καλεί ένα προσαρμοσμένο API Dataverse που είναι συνδεδεμένο στη σελίδα ως ενέργεια. |
executeFunction |
Καλεί ένα προσαρμοσμένο API Dataverse συνδεδεμένο στη σελίδα ως συνάρτηση. |
listBoundActions |
Παραθέτει τα προσαρμοσμένα API (ενέργειες και συναρτήσεις) του Dataverse που είναι συνδεδεμένα στη σελίδα. |
executeAction μέθοδος
Καλεί ένα προσαρμοσμένο API Dataverse το οποίο ένας δημιουργός συνδέεται στη σελίδα ως ενέργεια (ένα μήνυμα που μπορεί να αλλάξει δεδομένα).
Παράμετροι
Ορίστε μια τιμή για αυτή την απαιτούμενη παράμετρο.
| Πλήρες όνομα | Τύπος | Περιγραφή |
|---|---|---|
request |
DataverseActionRequest | Η ενέργεια κλήσης και οι παράμετροι εισόδου της. |
DataverseActionRequest
| Πλήρες όνομα | Τύπος | Περιγραφή |
|---|---|---|
name |
string |
Το μοναδικό όνομα του προσαρμοσμένου API, με πρόθημα εκδότη, όπως new_ApproveExpenseReport. |
parameters |
object |
(Προαιρετικό) Οι παράμετροι εισόδου που απαιτούνται από την ενέργεια, με βάση το μοναδικό όνομα παραμέτρου. |
boundTo |
object |
(Προαιρετικό) Μια αναφορά γραμμής προορισμού (entityName και id) για ενέργειες συνδεδεμένες με οντότητα. Παραλείπει για καθολικές (μη δεσμευμένες) ενέργειες. |
Επιστροφές
Μια υπόσχεση που περιέχει ένα DataverseActionResult. Αυτή η μέθοδος δεν εμφανίζει ποτέ αναμενόμενες αποτυχίες (όπως ένα σφάλμα δικαιωμάτων 403, μια παράμετρο 400 εσφαλμένη ή τη λειτουργία που δεν είναι δεσμευμένη ή ενεργοποιημένη) — ελέγξτε την ok ιδιότητα.
DataverseActionResult
| Πλήρες όνομα | Τύπος | Περιγραφή |
|---|---|---|
ok |
boolean |
Υποδεικνύει εάν η ενέργεια ολοκληρώθηκε με επιτυχία. |
status |
number |
Ο κωδικός κατάστασης HTTP που επιστρέφεται από το Dataverse ή 0 όταν δεν υπάρχει διαθέσιμη κατάσταση HTTP. Μια 0 κατάσταση μπορεί να σημαίνει ότι ο χρόνος εκτέλεσης απέρριψε την κλήση πριν την αποστολή της (για παράδειγμα, not_enabled, , not_permittednot_bound, wrong_operation_kind, invalid_parameterή invalid_bound_to), η αίτηση απέτυχε χωρίς απόκριση HTTP ή το αποτέλεσμα είναι άγνωστο (indeterminate είναι true). Χρησιμοποιήστε error.code και indeterminate για να χωρίσετε αυτές τις υποθέσεις. |
outputs |
object |
Οι παράμετροι εξόδου επιστρέφονται από την ενέργεια, με βάση το μοναδικό όνομα. Κενό για ενέργειες χωρίς έξοδο. |
indeterminate |
boolean |
(Προαιρετικό) true όταν ένα χρονικό όριο ή άλλη αποτυχία μετά την αποστολή σημαίνει ότι ο διακομιστής ενδέχεται να έχει ολοκληρώσει την ενέργεια, μην προσπαθήσετε ξανά αυτόματα. |
error |
object |
(Προαιρετικό) Λεπτομέρειες σφάλματος όταν ok το είναι false, συμπεριλαμβανομένου ενός αναγνώσιμου code από υπολογιστή και ενός απολυμμένου message.
codeΤο στοιχείο είναι ένα από not_enabledτα , not_bound, not_permitted, wrong_operation_kind, invalid_parameter, indeterminateinvalid_bound_toή , ή networkτον κωδικό κατάστασης HTTP της ενέργειας ως συμβολοσειρά (για παράδειγμα, "404") όταν το Dataverse επέστρεψε μια απόκριση σφάλματος ή "0" όταν δεν υπήρχε διαθέσιμη κατάσταση HTTP.
not_permitted Η σημαίνει ότι η ενέργεια ή η συνάρτηση δεν βρίσκεται στη λίστα επιτρεπόμενων του περιβάλλοντος για σελίδες δημιουργίας — δεν υποδεικνύει εάν ο τρέχων χρήστης διατηρεί τα δικαιώματα Dataverse για να την εκτελέσει. Μια αποτυχία δικαιωμάτων εμφανίζεται συνήθως όπως status: 403 με τον κωδικό "403"σφάλματος. Εάν ο κεντρικός υπολογιστής δεν μπορεί να προσδιορίσει την κατάσταση HTTP, επιστρέφει status: 0 στη θέση του. |
παράδειγμα executeAction
if (!dataApi.executeAction) {
throw new Error("executeAction isn't available on this page.");
}
const result = await dataApi.executeAction({
name: "new_ApproveExpenseReport",
parameters: { comments: "Approved by manager" },
boundTo: { entityName: "new_expensereport", id: "30dc51e9-947d-47d8-ad48-4fc48fba4a95" },
});
if (result.ok) {
console.log(result.outputs);
}
else {
console.log(result.error?.code);
}
executeFunction μέθοδος
Καλεί ένα προσαρμοσμένο API Dataverse στο οποίο ένας δημιουργός συνδέεται στη σελίδα ως συνάρτηση (ένα μήνυμα μόνο για ανάγνωση με τη σημασιολογία GET).
Παράμετροι
Ορίστε μια τιμή για αυτή την απαιτούμενη παράμετρο.
| Πλήρες όνομα | Τύπος | Περιγραφή |
|---|---|---|
request |
DataverseFunctionRequest | Η συνάρτηση που θα κληθεί και οι παράμετροι εισόδου της. |
DataverseFunctionRequest
| Πλήρες όνομα | Τύπος | Περιγραφή |
|---|---|---|
name |
string |
Το μοναδικό όνομα του προσαρμοσμένου API, με πρόθημα εκδότη, όπως new_GetExchangeRate. |
parameters |
object |
(Προαιρετικό) Οι παράμετροι εισόδου που απαιτούνται από τη συνάρτηση, με βάση το μοναδικό όνομα παραμέτρου. |
boundTo |
object |
(Προαιρετικό) Μια αναφορά γραμμής προορισμού (entityName και id) για συναρτήσεις συνδεδεμένες με οντότητα. Παραλείπει για καθολικές (μη δεσμευμένες) συναρτήσεις. |
Επιστροφές
Μια υπόσχεση που περιέχει ένα DataverseActionResult. Όπως και με executeActionτο , αυτή η μέθοδος δεν εμφανίζει ποτέ αναμενόμενες αποτυχίες , ελέγξτε την ok ιδιότητα.
παράδειγμα executeFunction
if (!dataApi.executeFunction) {
throw new Error("executeFunction isn't available on this page.");
}
const result = await dataApi.executeFunction({
name: "new_GetExchangeRate",
parameters: { currencyCode: "EUR" },
});
if (result.ok) {
console.log(result.outputs);
}
listBoundActions μέθοδος
Εμφανίζει τα προσαρμοσμένα API (ενέργειες και συναρτήσεις) του Dataverse που έχει συνδέσει ένας δημιουργός στη σελίδα.
Παράμετροι
Κανένας.
Επιστροφές
Μια υπόσχεση που περιέχει έναν πίνακα καταχωρήσεων DataverseActionInfo . Επιστρέφει έναν κενό πίνακα όταν ο εντοπισμός δεν είναι ενεργοποιημένος για τον χρόνο εκτέλεσης.
DataverseActionInfo
DataverseActionInfo Αντικατοπτρίζει αυτό που δέσμευση του δημιουργού της σελίδας για αυτήν την ενέργεια ή συνάρτηση και όχι τα μετα-δεδομένα του Dataverse. Μην το χρησιμοποιείτε για να δημιουργήσετε φόρμες εισόδου ή για να επικυρώσετε εξόδους , επαληθεύστε τις απαιτήσεις παραμέτρων και τα σχήματα εξόδου σε σχέση με τον πραγματικό προσαρμοσμένο ορισμό API Dataverse.
| Πλήρες όνομα | Τύπος | Περιγραφή |
|---|---|---|
name |
string |
Το μοναδικό (λογικό) όνομα του προσαρμοσμένου API Dataverse. |
displayName |
string |
Το εμφανιζόμενο όνομα ενός προσαρμοσμένου API. |
isFunction |
boolean |
true εάν το προσαρμοσμένο API Dataverse είναι συνάρτηση (μόνο για ανάγνωση). false εάν πρόκειται για ενέργεια, συμπεριλαμβανομένης της στιγμής που αυτή η τιμή δεν καταγράφηκε κατά τον χρόνο σύνδεσης. |
bindingType |
string |
Ο τύπος σύνδεσης: "Global" ή "Entity". |
boundEntityLogicalName |
string |
(Προαιρετικό) Ο πίνακας στον οποίο συνδέεται η ενέργεια ή η συνάρτηση, όταν bindingType είναι "Entity". |
parameters |
Object[] |
Οι παράμετροι εισόδου που καταγράφηκαν όταν το προσαρμοσμένο API Dataverse ήταν συνδεδεμένο στη σελίδα, καθεμία με ένα name και declaredKind.
type Το είναι πάντα "unknown" και optional είναι πάντα false — κανένα από τα δύο δεν αντικατοπτρίζει τα πραγματικά μετα-δεδομένα του προσαρμοσμένου API Dataverse. |
outputs |
Object[] |
Πάντα ένας κενός πίνακας. Ο εντοπισμός σύνδεσης δεν καταγράφει παραμέτρους εξόδου. |
listBoundActions παράδειγμα
const actions = await dataApi.listBoundActions?.();