Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of mappen te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen om mappen te wijzigen.
Gebruik de actie- en functiemethoden van het dataApi object om aangepaste API's van Dataverse aan te roepen die zijn gebonden aan de pagina.
Notitie
Actie- en functiemethoden zijn optioneel in het gedeelde dataApi contract. Sommige hosts implementeren ze niet, dus controleer of er een methode bestaat voordat u deze aanroept. Een methode die aanwezig is, betekent niet dat de bewerking is gebonden aan de pagina, is ingeschakeld voor de runtime of is toegestaan voor de huidige gebruiker. In tegenstelling tot connectormethoden worden deze methoden nooit veroorzaakt door verwachte fouten; in plaats daarvan worden ze opgelost met ok: false en een foutcode. De resultaten ok en error eigenschappen expliciet verwerken.
listBoundActions retourneert de acties en functies waarmee de huidige runtimeconfiguratie de pagina toestaat wanneer die detectie is ingeschakeld; het is geen garantie dat de huidige gebruiker de Dataverse-bevoegdheden heeft die nodig zijn om elke vermelde bewerking uit te voeren.
| Method | Description |
|---|---|
executeAction |
Roept een aangepaste Dataverse-API aan die is gebonden aan de pagina als een actie. |
executeFunction |
Roept een aangepaste Dataverse-API aan die is gebonden aan de pagina als een functie. |
listBoundActions |
Geeft een lijst weer van de aangepaste API's (acties en functies) die zijn gebonden aan de pagina. |
executeAction methode
Roept een aangepaste Dataverse-API aan die door een maker is gebonden aan de pagina als een actie (een bericht dat gegevens kan wijzigen).
Parameters
Stel een waarde in voor deze vereiste parameter.
| Name | Type | Description |
|---|---|---|
request |
DataverseActionRequest | De actie die moet worden aangeroepen en de bijbehorende invoerparameters. |
DataverseActionRequest
| Name | Type | Description |
|---|---|---|
name |
string |
De unieke naam van de aangepaste API, voorafgegaan door uitgevers, zoals new_ApproveExpenseReport. |
parameters |
object |
(Optioneel) De invoerparameters die vereist zijn voor de actie, gesleuteld op unieke parameternaam. |
boundTo |
object |
(Optioneel) Een verwijzing naar de doelrij (entityName en id) voor entiteitsgebonden acties. Weglaten voor globale (niet-afhankelijke) acties. |
Returns
Een belofte met een DataverseActionResult. Deze methode genereert nooit verwachte fouten (zoals een machtigingsfout van 403, een ongeldige parameter van 400 of de bewerking is niet gebonden of ingeschakeld). Controleer in plaats daarvan de ok eigenschap.
DataverseActionResult
| Name | Type | Description |
|---|---|---|
ok |
boolean |
Geeft aan of de actie is geslaagd. |
status |
number |
De HTTP-statuscode die wordt geretourneerd door Dataverse of 0 wanneer er geen HTTP-status beschikbaar is. Een 0 status kan betekenen dat de runtime de aanroep heeft afgewezen voordat deze wordt verzonden (bijvoorbeeld, not_enablednot_bound, not_permittedwrong_operation_kind, of invalid_bound_toinvalid_parameter), de aanvraag is mislukt zonder EEN HTTP-antwoord, of dat het resultaat onbekend is (indeterminateis).true Gebruik error.code en indeterminate om deze gevallen apart te vertellen. |
outputs |
object |
De uitvoerparameters die door de actie worden geretourneerd, met een unieke naam. Leeg voor acties zonder uitvoer. |
indeterminate |
boolean |
(Optioneel) true wanneer een time-out of een andere post-dispatch-fout betekent dat de server de actie mogelijk heeft doorgevoerd; probeer het niet automatisch opnieuw. |
error |
object |
(Optioneel) Foutdetails wanneer ok , falseinclusief een machineleesbaar code en opgeschoond message.
codeis een van, not_bound, not_permitted, wrong_operation_kind, , invalid_parameter, invalid_bound_to, , , indeterminateof , of networkde HTTP-statuscode van not_enabledde actie als een tekenreeks (bijvoorbeeld "404") wanneer Dataverse een foutantwoord heeft geretourneerd of "0" wanneer er geen HTTP-status beschikbaar was.
not_permitted betekent dat de actie of functie zich niet in de acceptatielijst van de omgeving bevindt voor generatieve pagina's. Het geeft niet aan of de huidige gebruiker de Dataverse-bevoegdheden heeft om deze uit te voeren. Een fout met bevoegdheden komt meestal voor als status: 403 bij foutcode "403". Als de host de HTTP-status niet kan bepalen, wordt deze geretourneerd status: 0 . |
executeAction-voorbeeld
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 methode
Roept een aangepaste Dataverse-API aan die een maker als functie aan de pagina heeft gebonden (een alleen-lezen bericht met GET-semantiek).
Parameters
Stel een waarde in voor deze vereiste parameter.
| Name | Type | Description |
|---|---|---|
request |
DataverseFunctionRequest | De functie die moet worden aangeroepen en de bijbehorende invoerparameters. |
DataverseFunctionRequest
| Name | Type | Description |
|---|---|---|
name |
string |
De unieke naam van de aangepaste API, voorafgegaan door uitgevers, zoals new_GetExchangeRate. |
parameters |
object |
(Optioneel) De invoerparameters die vereist zijn voor de functie, gesleuteld op unieke parameternaam. |
boundTo |
object |
(Optioneel) Een verwijzing naar de doelrij (entityName en id) voor entiteitsgebonden functies. Weglaten voor globale (niet-afhankelijke) functies. |
Returns
Een belofte met een DataverseActionResult. Net als bij executeActiondeze methode genereert deze methode nooit op verwachte fouten. Controleer in plaats daarvan de ok eigenschap.
executeFunction-voorbeeld
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 methode
Een lijst met de aangepaste API's van Dataverse (acties en functies) die een maker aan de pagina heeft gebonden.
Parameters
None.
Returns
Een belofte met een matrix van DataverseActionInfo-vermeldingen . Retourneert een lege matrix wanneer detectie niet is ingeschakeld voor de runtime.
DataverseActionInfo
DataverseActionInfo geeft aan wat de maker van de pagina is gebonden voor deze actie of functie, niet live Dataverse-metagegevens. Gebruik deze niet om invoerformulieren te maken of uitvoer te valideren. Controleer de parametervereisten en uitvoershapes op basis van de daadwerkelijke definitie van de aangepaste Dataverse-API.
| Name | Type | Description |
|---|---|---|
name |
string |
De unieke (logische) naam van de aangepaste Dataverse-API. |
displayName |
string |
De weergavenaam van een aangepaste API. |
isFunction |
boolean |
true als de aangepaste Dataverse-API een functie is (alleen-lezen); false als dit een actie is, inclusief wanneer deze waarde niet is vastgelegd tijdens de binding. |
bindingType |
string |
Het bindingstype: "Global" of "Entity". |
boundEntityLogicalName |
string |
(Optioneel) De tabel waaraan de actie of functie is gebonden, wanneerbindingType."Entity" |
parameters |
Object[] |
De invoerparameters die zijn vastgelegd toen de aangepaste Dataverse-API gebonden was aan de pagina, elk met een name en declaredKind.
type is altijd "unknown" en optional altijd false , noch weerspiegelt de werkelijke metagegevens van de Aangepaste API van Dataverse. |
outputs |
Object[] |
Altijd een lege matrix. Met bindingsdetectie worden geen uitvoerparameters vastgelegd. |
listBoundActions Voorbeeld
const actions = await dataApi.listBoundActions?.();