Del via


dataApi-reference til generative sider

Når du genererer en side ved hjælp af et naturligt sprog, opretter AI'en en React-side i TypeScript. Den genererede side dækker både frontendbrugeroplevelsen ved at vælge de rigtige komponenter og bestemme det bedste layout og den tilsvarende forretningslogik.

Du kan få vist og redigere den genererede kode for at afgrænse outputtet. Datahandlinger bruger et dataApi objekt, der viser følgende offentlige metoder:

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

createRow metode

Opretter en ny række i den angivne tabel.

Parametre

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

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

Returnerer

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

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);
}

updateRow metode

Opdaterer en eksisterende række i den angivne tabel.

Parametre

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

Navn Type Beskrivelse
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.

Returnerer

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

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);
}

deleteRow metode

Sletter en række fra den angivne tabel.

Parametre

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

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

Returnerer

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

Eksempel

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

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.

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

RetrieveRowOptions

Navn Type Beskrivelse
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.

Returnerer

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

Eksempel

// 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'],
});

queryTable metode

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

Parametre

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

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

QueryTableOptions

Navn Type Beskrivelse
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.

Returnerer

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:

Navn Type Beskrivelse
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

// 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`);
}

Bemærkninger

Notat

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

getChoices metode

Henter valgmulighederne for det angivne valgkolonnenavn.

Parametre

Denne parameter er påkrævet.

Navn Type Beskrivelse
enumName string Navnet på valgkolonnen i formatet tablename-columnname

Returnerer

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

Navn Type Beskrivelse
label streng Den oversatte mærkatværdi for indstillingen.
value Nummer Den numeriske værdi for indstillingen.

Eksempel

// 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');