dataApi nuoroda į generuojančius puslapius

Kai generuojate puslapį naudodami natūralią kalbą, DI sukuria puslapį React naudodami TypeScript. Sugeneruotame puslapyje apžvelgiamos vartotojo sąsajos pasirenkant tinkamus komponentus ir nustatant geriausią maketą bei atitinkamą verslo logiką.

Galite peržiūrėti ir redaguoti sugeneruotą kodą, kad patikslintumėte išvestį. Duomenų operacijos naudoja objektą dataApi , kuris atskleidžia šiuos viešuosius metodus:

Metodas Aprašas
createRow Sukuria naują eilutę nurodytoje lentelėje.
updateRow Atnaujina esamą nurodytos lentelės eilutę.
deleteRow Panaikina eilutę iš nurodytos lentelės.
retrieveRow Nuskaito eilutę iš nurodytos lentelės su nurodytomis parinktimis.
queryTable Pateikia užklausą lentelei su nurodytomis parinktimis.
getChoices Nuskaito nurodyto pasirinkimo stulpelio pavadinimo pasirinkimus.

createRow metodas

Sukuria naują eilutę nurodytoje lentelėje.

Parametrai

Nustatykite šių būtinų parametrų reikšmes.

Pavadinimą Tipas Aprašas
tableName eilutė Loginis lentelės, kurioje bus kuriama eilutė, pavadinimas.
row objektas Kuriami eilutės duomenys.

Grąžinimai

Pažadas, kuriame pateikiamas operacijos rezultatas. Kai operacija pavyksta, rezultatas yra sukurtos eilutės ID (Guid) reikšmė.

Pavyzdžiui

// 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 metodas

Atnaujina esamą nurodytos lentelės eilutę.

Parametrai

Nustatykite šių būtinų parametrų reikšmes.

Pavadinimą Tipas Aprašas
tableName eilutė Loginis lentelės, kurioje bus atnaujinta eilutė, pavadinimas.
rowId eilutė Naujintinų eilučių ID.
row Objektas Atnaujintinus eilutės duomenis.

Grąžinimai

Pažadas, kuriame pateikiamas operacijos rezultatas. Kai operacija pavyksta, ji nepateikia jokios reikšmės.

Pavyzdžiui

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 metodas

Panaikina eilutę iš nurodytos lentelės.

Parametrai

Nustatykite šių būtinų parametrų reikšmes.

Pavadinimą Tipas Aprašas
tableName eilutė Loginis lentelės, kurioje bus panaikinta eilutė, pavadinimas.
rowId eilutė Naikintinų eilučių ID.

Grąžinimai

Pažadas, kuriame pateikiamas operacijos rezultatas. Kai operacija pavyksta, ji nepateikia jokios reikšmės.

Pavyzdžiui

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

retrieveRow metodas

Nuskaito eilutę iš nurodytos lentelės naudojant nurodytas parinktis.

Parametrai

Nustatykite šių būtinų parametrų reikšmes.

Pavadinimą Tipas Aprašas
tableName string Loginis lentelės, iš kurios reikia nuskaityti, pavadinimas
options RetrieveRowOptions Eilutės nuskaitymo parinktys

RetrieveRowOptions

Pavadinimą Tipas Aprašas
id string Eilutės, kurią reikia nuskaityti, ID (Guid)
select string[] (Rekomenduojama) Nuskaitomų stulpelių pavadinimų masyvas. Jei nenurodyta, grąžinami visi stulpeliai.

Grąžinimai

Pažadas, kuriame pateikiamas operacijos rezultatas. Kai operacija pavyksta, grąžinamas objektas, kuriame yra įrašo duomenys, įskaitant visus pasirinktus stulpelius.

Pavyzdžiui

// 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 metodas

Užklausas pateikia lentelei naudojant nurodytas parinktis.

Parametrai

Nustatykite šių būtinų parametrų reikšmes.

Pavadinimą Tipas Aprašas
tableName string Loginis užklausos lentelės pavadinimas
query QueryTableOptions Lentelės užklausos parinktys

QueryTableOptions

Pavadinimą Tipas Aprašas
select string[] (Rekomenduojama) Nuskaitomų stulpelių pavadinimų masyvas.
filter string (Pasirinktinai) "OData" filtro išraiška (pvz., statecode eq 0).
orderBy string (Pasirinktinai) "OData orderby" reiškinys (pvz., name asc, createdon desc).
pageSize number (Pasirinktinai) Maksimalus puslapyje pateikiamų eilučių skaičius.

Grąžinimai

Pažadas, kuriame pateikiamas operacijos rezultatas. Kai operacija pavyksta, pažadas pateikia objektą, kuriame yra duomenų lentelė su šių ypatybių rezultatais:

Pavadinimą Tipas Aprašas
rows Object[] Eilučių duomenų masyvas
hasMoreRows boolean Nurodo, ar yra daugiau galimų eilučių
loadMoreRows function Funkcija, kad būtų įkeltas paskesnis rezultatų puslapis. (Pasirinktinai)

Pavyzdžiui

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

Pastabos

Pastaba.

Kad našumas būtų geresnis, visada apribokite pateikiamų stulpelių skaičių naudodami ypatybę QueryTableOptionsselect .

getChoices metodas

Nuskaito nurodyto pasirinkimo stulpelio pavadinimo pasirinkimus.

Parametrai

Šis parametras yra būtinas.

Pavadinimą Tipas Aprašas
enumName string Pasirinkimo stulpelio pavadinimas formatu tablename-columnname

Grąžinimai

Pažadas, kuriame pateikiamas operacijos rezultatas. Kai operacija pavyksta, ji pateikia pasirinkimo parinkčių masyvą. Kiekviena parinktis turi šias ypatybes:

Pavadinimą Tipas Aprašas
label eilutė Lokalizuota parinkties žymos reikšmė.
value Skaičius Skaitinė parinkties reikšmė.

Pavyzdžiui

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