Erabili atariak Web APIa idatzi, eguneratu eta ezabatzeko eragiketak egiteko
Oharra
2022ko urriaren 12tik aurrera, Power Pages izango da Power Apps atarien izen berria. Informazio gehiago: Microsoft Power Pages erabilgarri dago modu orokorrean (bloga)
Laster migratuko eta konbinatuko dugu Power Apps atarien dokumentazioa Power Pages dokumentazioarekin.
Egin dezakezu eskuragarri dauden web APIen eragiketak atarietan. Web APIaren eragiketak HTTP eskaerek eta erantzunek osatzen dute. Artikulu honek HTTP eskaeretan erabil ditzakezun eragiketak, metodoak, URIak eta JSON laginak idatzi, eguneratu eta ezabatzeko laginak eskaintzen ditu.
Garrantzitsua
- Atariaren bertsioak 9.3.3.x edo berriagoa izan behar du funtzio honek funtziona dezan.
Aurrebaldintzak
Gaitu taula eta eremua Web API eragiketetarako. Informazio gehiago: Web APIaren gune-ezarpenak
Atarietako Web APIak taula-erregistroak atzitzen ditu eta lotutako web-rolen bidez erabiltzaileei emandako taula-baimenei jarraitzen die. Ziurtatu taularen baimen egokiak konfiguratzen dituzula. Informazio gehiago: Sortu web-rolak
Sortu erregistro bat taula batean
Oharra
Dataverse taulak atarietako Web APIa erabiliz aipatzean, EntitySetName erabili behar duzu, adibidez, kontua taula atzitzeko, kodearen sintaxiak kontuak atalaren EntitySetName-a erabiliko du.
Oinarrizko Sortu
Eragiketa | Metodoa | URIa | JSOn Lagina |
---|---|---|---|
Oinarrizko Sortu | BIDALI | [Ataria URI]/_api/accounts | {"izena":"Laginaren kontua"} |
Eragiketa batean erlazionatutako taulako erregistroak sortzeko JSON lagina
Adibidez, Kontua taula-multzoan argitaratutako eskaera-gorputzak guztira lau taula berri sortuko ditu (kontua barne) kontua sortzeko testuinguruan.
- Kontaktu bat sortzen da
primarycontactid
balio bakarreko nabigazio-propietatearen objektu-propietate gisa zehaztuta dagoelako. - Abagune bat sortzen da,
opportunity_customer_accounts
bildumako nabigazio-propietate baten balioan ezarrita dagoen matrize baten barruan dagoen objektu gisa zehazten delako. - Zeregin bat sortzen da
Opportunity_Tasks
bildumako balio duen nabigazio-propietate baten balioan ezarritako matrize baten barruan objektu gisa zehaztuta dagoelako.
{
"name": "Sample Account",
"primarycontactid":
{
"firstname": "Alton",
"lastname": "Stott"
},
"opportunity_customer_accounts":
[
{
"name": "Opportunity associated to Sample Account",
"Opportunity_Tasks":
[
{ "subject": "Task associated to opportunity" }
]
}
]
}
Elkartu taulako erregistroak sortzean
Eragiketa | Metodoa | URIa | JSOn Lagina |
---|---|---|---|
Elkartu taulako erregistroak sortzean | POST | [Ataria URI]/_api/accounts | {"name":"Sample Account","primarycontactid@odata.bind":"/contacts(00000000-0000-0000-0000-000000000001)"} |
JSON lagina Web API bidez oharpen bat sortzeko
{
"new_attribute1": "test attribute 1",
"new_attribute2": "test attribute 2",
"new_comments": "test comments",
"new_recordurl": recordURL,
"new_feedback_Annotations":
[
{
"notetext": "Screenshot attached",
"subject": "Attachment",
"filename": file.name,
"mimetype": file.type,
"documentbody": base64str,
}
]
}
documentbody
eranskina base64 kate gisa edukiko du.
Eguneratu eta ezabatu erregistroak Web APIa erabiliz
Oinarrizko eguneratzea
Eragiketa | Metodoa | URIa | JSOn Lagina |
---|---|---|---|
Oinarrizko eguneratzea | ADABAKIA | [Ataria URI]/_api/accounts(00000000-0000-0000-0000-000000000001) | { "name": "Updated Sample Account ", "creditonhold": true, "address1_latitude": 47.639583, "description": "This is the updated description of the sample account", "revenue": 6000000, "accountcategorycode": 2 } |
Eguneratu jabetza bakarraren balioa
Eragiketa | Metodoa | URIa | JSOn Lagina |
---|---|---|---|
Eguneratu jabetza bakarraren balioa | JARRI | [Ataria URI]/_api/accounts(00000000-0000-0000-0000-000000000001)/izena | {"value": "Updated Sample Account Name"} |
Ezabatu edo garbitu eremu-balio bat
Eragiketa | Metodoa | URIa |
---|---|---|
Ezabatu edo garbitu eremu-balio bat | DELETE | [Ataria URI]/_api/accounts(00000000-0000-0000-0000-000000000001)/deskribapena |
Oinarrizko ezabatzea
Eragiketa | Metodoa | URIa |
---|---|---|
Oinarrizko ezabatzea | DELETE | [Ataria URI]/_api/accounts(00000000-0000-0000-0000-000000000001) |
Erlazionatu eta kendu erlazioa taulei Web API erabiliz
Gehitu bilduma balioetsitako nabigazio propietate bati erreferentzia
Eragiketa | Metodoa | URIa | JSOn Lagina |
---|---|---|---|
Gehitu bilduma balioetsitako nabigazio propietate bati erreferentzia | BIDALI | [Ataria URI]/_api/accounts(00000000-0000-0000-0000-000000000002)/opportunity_customer_accounts/$ref | {"@odata.id":"[Portal URI]/_api/opportunities(00000000-0000-0000-0000-000000000001)"} |
Kendu taula bati buruzko erreferentzia
Eragiketa | Metodoa | URIa |
---|---|---|
Kendu taula bati buruzko erreferentzia | EZABATU | [Ataria URI]/_api/accounts(00000000-0000-0000-0000-000000000002)/opportunity_customer_accounts/$ref?$id=[Portal URI]/_api/opportunities(00000000-0000-0000-0000-000000000001) |
Kendu taula bateko erreferentzia balio bakarreko nabigazio propietate baterako
Balio bakarreko nabigazio-propietate baterako, kendu $id kontsulta-katearen parametroa.
Eragiketa | Metodoa | URIa |
---|---|---|
Kendu taula bateko erreferentzia balio bakarreko nabigazio propietate baterako | EZABATU | [Ataria URI]/_api/opportunities(00000000-0000-0000-0000-000000000001)/customerid_account/$ref |
Aldatu erreferentzia balioesteko nabigazio propietate batean
Eragiketa | Metodoa | URIa | JSOn Lagina |
---|---|---|---|
Aldatu erreferentzia balioesteko nabigazio propietate batean | JARRI | [Ataria URI]/_api/opportunities(00000000-0000-0000-0000-000000000001)/customerid_account/$ref | {"@odata.id":"[Portal URI]/_api/accounts(00000000-0000-0000-0000-000000000002)"} |
Elkartu taulak sortzean
Taula berriak harremanekin sor daitezke erabiliz sakona txertatu.
Elkartu eguneratzean taulak balio bakarreko nabigazio propietate bat erabiliz
Eguneratzean taulak lotu ditzakezu gai honetan lehenago Oinarrizko eguneratzea atalean deskribatutako mezu bera erabiliz, baina @odata.bind
oharpena erabili behar duzu balio bakarreko nabigazio-propietate baten balioa ezartzeko. Adibide honetan aukera bati lotutako kontua aldatzen da customerid_account
balio bakarreko nabigazio-propietatea erabiliz.
Elkartu eguneratzean taulak balio bakarreko nabigazio propietate bat erabiliz
Eragiketa | Metodoa | URIa | JSOn Lagina |
---|---|---|---|
Elkartu eguneratzean taulak balio bakarreko nabigazio propietate bat erabiliz | PATCH | [Ataria URI]/_api/opportunities(00000000-0000-0000-0000-000000000001) | {"customerid_account@odata.bind":"[Portal URI]/_api/accounts(00000000-0000-0000-0000-000000000002)"} |
Web APIaren AJAX laginak
Lagin honek erakusten du taulako erregistroak nola sortu, eguneratu eta ezabatu JavaScript asinkronoa eta XML (AJAX) erabiliz.
Wrapper AJAX funtzioa
(function(webapi, $){
function safeAjax(ajaxOptions) {
var deferredAjax = $.Deferred();
shell.getTokenDeferred().done(function (token) {
// add headers for AJAX
if (!ajaxOptions.headers) {
$.extend(ajaxOptions, {
headers: {
"__RequestVerificationToken": token
}
});
} else {
ajaxOptions.headers["__RequestVerificationToken"] = token;
}
$.ajax(ajaxOptions)
.done(function(data, textStatus, jqXHR) {
validateLoginSession(data, textStatus, jqXHR, deferredAjax.resolve);
}).fail(deferredAjax.reject); //AJAX
}).fail(function () {
deferredAjax.rejectWith(this, arguments); // on token failure pass the token AJAX and args
});
return deferredAjax.promise();
}
webapi.safeAjax = safeAjax;
})(window.webapi = window.webapi || {}, jQuery)
Sortu
webapi.safeAjax({
type: "POST",
url: "/_api/accounts",
contentType: "application/json",
data: JSON.stringify({
"name": "Sample Account"
}),
success: function (res, status, xhr) {
//print id of newly created table record
console.log("entityID: "+ xhr.getResponseHeader("entityid"))
}
});
Update
webapi.safeAjax({
type: "PATCH",
url: "/_api/accounts(00000000-0000-0000-0000-000000000001)",
contentType: "application/json",
data: JSON.stringify({
"name": "Sample Account - Updated"
}),
success: function (res) {
console.log(res);
}
});
Ezabatu
webapi.safeAjax({
type: "DELETE",
url: "/_api/accounts(00000000-0000-0000-0000-000000000001)",
contentType: "application/json",
success: function (res) {
console.log(res);
}
});
Hurrengo urratsa
Tutoriala: Erabili atarien Web-APIa
Ikusi ere
Atarien web APIaren informazio orokorra
Atariek eragiketak irakurtzen dituzte Web APIa erabiliz
Oharra
Esan diezagukezu dokumentazioa zein hizkuntzatan jaso nahi duzun? Egin inkesta labur bat. (kontuan izan inkesta hau ingelesez dagoela)
Inkestak zazpi minutu inguru iraungo du. Ez da datu pertsonalik biltzen (pribatutasun-adierazpena).
Oharrak
https://aka.ms/ContentUserFeedback.
Laster erabilgarri: 2024an, GitHub-eko arazoak edukiari buruzko oharrak bidaltzeko mekanismo gisa kenduko dugu apurka-apurka, eta oharrak bidaltzeko sistema berri batekin ordeztuko. Informazio gehiagorako, ikusi:Bidali eta ikusi honi buruzko oharrak: