Metoder til dataversetabel for generative sider

Brug tabelmetoderne for dataApi objektet til at oprette, hente, opdatere og slette Dataverse-tabelrækker og kolonner til valg af forespørgsler.

Metode Beskrivende tekst
createRow Opretter en ny række i den angivne tabel.
deleteRow Sletter en række fra den angivne tabel.
getChoices Henter valgmulighederne for det angivne valgkolonnenavn.
queryTable Forespørger en tabel med de angivne indstillinger.
retrieveRow Henter en række fra den angivne tabel med de angivne indstillinger.
updateRow Opdaterer en eksisterende række i den angivne tabel.

createRow metode

Opretter en ny række i den angivne tabel.

Parametre

Angiv værdier for disse påkrævede parametre.

Name Type Beskrivende tekst
tableName streng Det logiske navn på den tabel, rækken skal oprettes i.
row objekt De rækkedata, der skal oprettes.

Retur

Et løfte , der indeholder resultatet af handlingen. Når handlingen lykkes, er resultatet id-værdien (GUID) for den oprettede række.

createRow-eksempel

// Define the row data to create new account
var row =
    {
        "name": "Sample Account",
        "creditonhold": false,
        "address1_latitude": 47.639583,
        "description": "This is the description of the sample account",
        "revenue": 5000000,
        "accountcategorycode": 1,
    }

try {
  // Create a new account record
  const newAccountId = await dataApi.createRow("account", row);
  console.log("Account created with ID: " + newAccountId);

  // Create a contact with a lookup to an account
  const newContactId = await dataApi.createRow('contact', {
    firstname: 'John',
    lastname: 'Doe',
    emailaddress1: 'john.doe@contoso.com',
    "parentcustomerid@odata.bind": `/account(${newAccountId})`, // Lookup format
  });
}
catch (error) {
  console.log(error.message);
}

deleteRow metode

Sletter en række fra den angivne tabel.

Parametre

Angiv værdier for disse påkrævede parametre.

Name Type Beskrivende tekst
tableName streng Det logiske navn på den tabel, rækken skal slettes i.
rowId streng Id'et for den række, der skal slettes.

Retur

Et løfte , der indeholder resultatet af handlingen. Når handlingen lykkes, returneres der ingen værdi.

eksempel på deleteRow

let rowId = "5531d753-95af-e711-a94e-000d3a11e605";
try {
  await dataApi.deleteRow("account", rowId);
}
catch (error) {
  console.log(error.message);
}

getChoices metode

Henter valgmulighederne for det angivne valgkolonnenavn.

Parametre

Denne parameter er påkrævet.

Name Type Beskrivende tekst
enumName string Navnet på valgkolonnen i formatet tablename-columnname

Retur

Et løfte , der indeholder resultatet af handlingen. Når handlingen lykkes, returneres en matrix af valgindstillingerne. Hver indstilling har følgende egenskaber:

Name Type Beskrivende tekst
label streng Den oversatte mærkatværdi for indstillingen.
value nummer Den numeriske værdi for indstillingen.

eksempel på getChoices

// Returns the accountcategorycode column options from the account table
const categoryChoices = await dataApi.getChoices("account-accountcategorycode");
// Returns the statecode column options from the contact table
const stateChoices = await dataApi.getChoices('contact-statecode');
// Returns the statuscode column options from the account table
const statusChoices = await dataApi.getChoices('account-statuscode');

queryTable metode

Forespørger en tabel ved hjælp af de angivne indstillinger.

Parametre

Angiv værdier for disse påkrævede parametre.

Name Type Beskrivende tekst
tableName string Det logiske navn på den tabel, der skal forespørge
query QueryTableOptions Indstillinger for forespørgsel om tabellen

QueryTableOptions

Name Type Beskrivende tekst
select string[] (Anbefalet) Matrix med kolonnenavne, der skal hentes.
filter string (Valgfrit) OData-filterudtryk (f.eks. statecode eq 0).
orderBy string (Valgfrit) OData orderby udtryk (f.eks. name asc, createdon desc).
pageSize number (Valgfrit) Det maksimale antal rækker, der skal returneres pr. side.

Retur

Et løfte , der indeholder resultatet af handlingen. Når handlingen lykkes, returnerer løftet et objekt, der indeholder en datatabel med resultaterne med disse egenskaber:

Name Type Beskrivende tekst
rows Object[] Matrix af rækkedata
hasMoreRows boolean Angiver, om der er flere tilgængelige rækker
loadMoreRows function Funktion til at indlæse den næste side med resultater. (valgfrit)

eksempel på queryTable

// Query tasks with options
const result = await dataApi.queryTable("task", {
    select: ["activityid", "subject", "scheduledend", "prioritycode", "statecode"],
    orderBy: "scheduledend asc",
    pageSize: 50,
    filter: "statecode eq 0"
});

// Query accounts with pagination
const pagedAccounts = await dataApi.queryTable('account', {
  select: ['name'],
  pageSize: 50,
});

console.log(`Page 1: ${pagedAccounts.rows.length} accounts`);

if (pagedAccounts.hasMoreRows && pagedAccounts.loadMoreRows) {
  const nextPage = await pagedAccounts.loadMoreRows();
  console.log(`Page 2: ${nextPage.rows.length} accounts`);
}

Remarks

Notat

For at opnå den bedste ydeevne skal du altid begrænse antallet af kolonner, der returneres ved hjælp af egenskaben QueryTableOptionsselect .

retrieveRow metode

Henter en række fra den angivne tabel ved hjælp af de angivne indstillinger.

Parametre

Angiv værdier for disse påkrævede parametre.

Name Type Beskrivende tekst
tableName string Det logiske navn på den tabel, der skal hentes fra
options RetrieveRowOptions Indstillinger for hentning af rækken

RetrieveRowOptions

Name Type Beskrivende tekst
id string Id'et (GUID) for den række, der skal hentes
select string[] (Anbefalet) Matrix med kolonnenavne, der skal hentes. Hvis den udelades, returneres alle kolonner.

Retur

Et løfte , der indeholder resultatet af handlingen. Når handlingen lykkes, returneres et objekt med postdataene, herunder alle de markerede kolonner.

eksempel på retrieveRow

// Retrieve an account with all columns
const account = await dataApi.retrieveRow('account', {
  id: '30dc51e9-947d-47d8-ad48-4fc48fba4a95',
});

// Retrieve specific columns only
const contact = await dataApi.retrieveRow('contact', {
  id: 'a1b2c3d4-e5f6-7890-abcd-ef1234567890',
  select: ['firstname', 'lastname', '_parentcustomerid_value'],
});

updateRow metode

Opdaterer en eksisterende række i den angivne tabel.

Parametre

Angiv værdier for disse påkrævede parametre.

Name Type Beskrivende tekst
tableName streng Det logiske navn på den tabel, rækken skal opdateres i.
rowId streng Id'et for den række, der skal opdateres.
row Objekt De rækkedata, der skal opdateres.

Retur

Et løfte , der indeholder resultatet af handlingen. Når handlingen lykkes, returneres der ingen værdi.

updateRow-eksempel

let rowId = "5531d753-95af-e711-a94e-000d3a11e605"

// Define the row to update a record
var row =
    {
        "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

try {
   await dataApi.updateRow("account", rowId, row);
}
catch (error){
  console.log(error.message);
}