Kongsi melalui


Rujukan dataApi untuk halaman generatif

Apabila anda menjana halaman menggunakan bahasa semula jadi, AI mencipta halaman React dalam TypeScript. Halaman yang dijana merangkumi kedua-dua pengalaman pengguna bahagian hadapan dengan memilih komponen yang betul dan menentukan susun atur terbaik, dan logik perniagaan yang sepadan.

Anda boleh melihat dan mengedit kod yang dijana untuk memperhalusi output. Operasi data menggunakan dataApi objek yang mendedahkan kaedah awam berikut:

Kaedah Perihalan
createRow Mencipta baris baharu dalam jadual yang ditentukan.
updateRow Mengemas kini baris sedia ada dalam jadual yang ditentukan.
deleteRow Memadamkan baris daripada jadual yang ditentukan.
retrieveRow Mendapatkan baris daripada jadual yang ditentukan dengan pilihan yang ditentukan.
queryTable Menanyakan jadual dengan opsyen yang ditentukan.
getChoices Mendapatkan semula pilihan untuk nama lajur pilihan yang ditentukan.

createRow Kaedah

Mencipta baris baharu dalam jadual yang ditentukan.

Parameter

Tetapkan nilai untuk parameter yang diperlukan ini.

Nama Jenis Perihalan
tableName rentetan Nama logik jadual untuk mencipta baris.
row objek Data baris untuk dibuat.

Pulangan

Janji yang mengandungi hasil operasi. Apabila operasi berjaya, hasilnya ialah nilai ID (Guid) bagi baris yang dicipta.

Contoh

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

Mengemas kini baris sedia ada dalam jadual yang ditentukan.

Parameter

Tetapkan nilai untuk parameter yang diperlukan ini.

Nama Jenis Perihalan
tableName rentetan Nama logik jadual untuk mengemas kini baris.
rowId rentetan ID baris untuk dikemas kini.
row Objek Data baris untuk dikemas kini.

Pulangan

Janji yang mengandungi hasil operasi. Apabila operasi berjaya, ia tidak mengembalikan nilai.

Contoh

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 Kaedah

Memadamkan baris daripada jadual yang ditentukan.

Parameter

Tetapkan nilai untuk parameter yang diperlukan ini.

Nama Jenis Perihalan
tableName rentetan Nama logik jadual untuk memadamkan baris.
rowId rentetan ID baris untuk dipadamkan.

Pulangan

Janji yang mengandungi hasil operasi. Apabila operasi berjaya, ia tidak mengembalikan nilai.

Contoh

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

retrieveRow Kaedah

Mendapatkan baris daripada jadual yang ditentukan dengan menggunakan opsyen yang ditentukan.

Parameter

Tetapkan nilai untuk parameter yang diperlukan ini.

Nama Jenis Perihalan
tableName string Nama logik jadual untuk diambil daripada
options RetrieveRowOptions Pilihan untuk mendapatkan semula baris

RetrieveRowOptions

Nama Jenis Perihalan
id string ID (Guid) baris untuk mendapatkan semula
select string[] (Disyorkan) Tatasusunan nama lajur untuk mendapatkan semula. Jika ditinggalkan, semua lajur dikembalikan.

Pulangan

Janji yang mengandungi hasil operasi. Apabila operasi berjaya, objek yang mengandungi data rekod dikembalikan, termasuk semua lajur yang dipilih.

Contoh

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

Pertanyaan jadual dengan menggunakan opsyen yang ditentukan.

Parameter

Tetapkan nilai untuk parameter yang diperlukan ini.

Nama Jenis Perihalan
tableName string Nama logik jadual untuk ditanyakan
query QueryTableOptions Pilihan untuk menanyakan jadual

QueryTableOptions

Nama Jenis Perihalan
select string[] (Disyorkan) Tatasusunan nama lajur untuk mendapatkan semula.
filter string (Pilihan) Ungkapan penapis OData (contohnya, statecode eq 0).
orderBy string (Pilihan) OData tertibmengikut ungkapan (contohnya, name asc, ). createdon desc
pageSize number (Pilihan) Bilangan baris maksimum untuk dikembalikan setiap halaman.

Pulangan

Janji yang mengandungi hasil operasi. Apabila operasi berjaya, janji mengembalikan objek yang mengandungi jadual data dengan hasil dengan sifat ini:

Nama Jenis Perihalan
rows Object[] Tatasusunan data baris
hasMoreRows boolean Menunjukkan jika terdapat lebih banyak baris yang tersedia
loadMoreRows function Fungsi untuk memuatkan halaman seterusnya keputusan. (Pilihan)

Contoh

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

Kenyataan

Nota

Untuk prestasi terbaik, sentiasa hadkan bilangan lajur yang dikembalikan dengan menggunakan sifat QueryTableOptionsselect .

getChoices Kaedah

Mendapatkan semula pilihan untuk nama lajur pilihan yang ditentukan.

Parameter

Parameter ini diperlukan.

Nama Jenis Perihalan
enumName string Nama lajur pilihan dalam format tablename-columnname

Pulangan

Janji yang mengandungi hasil operasi. Apabila operasi berjaya, ia mengembalikan tatasusunan pilihan pilihan. Setiap pilihan mempunyai sifat ini:

Nama Jenis Perihalan
label rentetan Nilai label setempat opsyen.
value Nombor Nilai berangka opsyen.

Contoh

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