dataApi reference for generative pages

Atunci când generați o pagină utilizând un limbaj natural, inteligența artificială creează o pagină React în TypeScript. Pagina generată acoperă atât experiența utilizatorului front-end, selectând componentele potrivite și stabilind cel mai bun aspect, cât și logica de business corespunzătoare.

Puteți vizualiza și edita codul generat pentru a rafina rezultatul. Operațiunile de date utilizează un dataApi obiect care expune următoarele metode publice:

Metodă Descriere
createRow Creează un rând nou în tabelul specificat.
updateRow Actualizează un rând existent din tabelul specificat.
deleteRow Șterge un rând din tabelul specificat.
retrieveRow Regăsește un rând din tabelul specificat cu opțiunile specificate.
queryTable Interoghează un tabel cu opțiunile specificate.
getChoices Regăsește opțiunile pentru numele coloanei de alegere specificate.

createRow metodă

Creează un rând nou în tabelul specificat.

Parametri

Setați valorile pentru acești parametri necesari.

Nume Tip Descriere
tableName string Numele logic al tabelului în care se creează rândul.
row obiect Datele de rând de creat.

Retururi

O promisiune care conține rezultatul operațiunii. Atunci când operațiunea reușește, rezultatul este valoarea ID (GUID) a rândului creat.

Exemplu

// 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 metodă

Actualizează un rând existent din tabelul specificat.

Parametri

Setați valorile pentru acești parametri necesari.

Nume Tip Descriere
tableName string Numele logic al tabelului în care se actualizează rândul.
rowId string ID-ul rândului de actualizat.
row Obiect Datele de rând de actualizat.

Retururi

O promisiune care conține rezultatul operațiunii. Atunci când operațiunea reușește, nu returnează nicio valoare.

Exemplu

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 metodă

Șterge un rând din tabelul specificat.

Parametri

Setați valorile pentru acești parametri necesari.

Nume Tip Descriere
tableName string Numele logic al tabelului în care se șterge rândul.
rowId string ID-ul rândului de șters.

Retururi

O promisiune care conține rezultatul operațiunii. Atunci când operațiunea reușește, nu returnează nicio valoare.

Exemplu

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

retrieveRow metodă

Regăsește un rând din tabelul specificat, utilizând opțiunile specificate.

Parametri

Setați valorile pentru acești parametri necesari.

Nume Tip Descriere
tableName string Numele logic al tabelului de regăsit din
options RetrieveRowOptions Opțiuni pentru regăsirea rândului

RetrieveRowOptions

Nume Tip Descriere
id string ID-ul (GUID) al rândului de regăsit
select string[] (Recomandat) Matrice de nume de coloane de regăsit. Dacă este omisă, se returnează toate coloanele.

Retururi

O promisiune care conține rezultatul operațiunii. Atunci când operațiunea reușește, se returnează un obiect care conține datele înregistrării, inclusiv toate coloanele selectate.

Exemplu

// 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 metodă

Interoghează un tabel utilizând opțiunile specificate.

Parametri

Setați valorile pentru acești parametri necesari.

Nume Tip Descriere
tableName string Numele logic al tabelului de interogat
query InterogăriTableOptions Opțiuni pentru interogarea tabelului

InterogăriTableOptions

Nume Tip Descriere
select string[] (Recomandat) Matrice de nume de coloane de regăsit.
filter string (Opțional) Expresie filtru OData (de exemplu, statecode eq 0).
orderBy string (Opțional) OData orderby expresie (de exemplu, name asc, createdon desc).
pageSize number (Opțional) Numărul maxim de rânduri de returnat pe pagină.

Retururi

O promisiune care conține rezultatul operațiunii. Atunci când operațiunea reușește, promisiunea returnează un obiect care conține un tabel de date cu rezultatele cu aceste proprietăți:

Nume Tip Descriere
rows Object[] Matrice de date de rând
hasMoreRows boolean Indică dacă sunt disponibile mai multe rânduri
loadMoreRows function Funcția pentru a încărca următoarea pagină de rezultate. (Opțional)

Exemplu

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

Observații

Notă

Pentru o performanță optimă, limitați întotdeauna numărul de coloane returnate utilizând proprietatea QueryTableOptionsselect .

getChoices metodă

Regăsește opțiunile pentru numele coloanei de alegere specificate.

Parametri

Acest parametru este necesar.

Nume Tip Descriere
enumName string Numele coloanei de alegere în format tablename-columnname

Retururi

O promisiune care conține rezultatul operațiunii. Atunci când operațiunea reușește, returnează o matrice cu opțiunile de alegere. Fiecare opțiune are aceste proprietăți:

Nume Tip Descriere
label string Valoarea etichetei localizate a opțiunii.
value Număr Valoarea numerică a opțiunii.

Exemplu

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