Condividi tramite


informazioni di riferimento su dataApi per le pagine generative

Quando si genera una pagina usando il linguaggio naturale, l'intelligenza artificiale crea una pagina React in TypeScript. La pagina generata copre sia l'esperienza utente front-end selezionando i componenti corretti che determinando il layout migliore e la logica di business corrispondente.

È possibile visualizzare e modificare il codice generato per perfezionare l'output. Le operazioni sui dati usano un dataApi oggetto che espone i metodi pubblici seguenti:

Metodo Description
createRow Crea una nuova riga nella tabella specificata.
updateRow Aggiorna una riga esistente nella tabella specificata.
deleteRow Elimina una riga dalla tabella specificata.
retrieveRow Recupera una riga dalla tabella specificata con le opzioni specificate.
queryTable Esegue una query su una tabella con le opzioni specificate.
getChoices Recupera le scelte per il nome della colonna di scelta specificata.

Metodo createRow

Crea una nuova riga nella tabella specificata.

Parametri

Impostare i valori per questi parametri obbligatori.

Nome TIPO Description
tableName corda Nome logico della tabella in cui creare la riga.
row oggetto Dati di riga da creare.

Restituzioni

Promessa contenente il risultato dell'operazione. Quando l'operazione ha esito positivo, il risultato è il valore ID (GUID) della riga creata.

Example

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

Metodo updateRow

Aggiorna una riga esistente nella tabella specificata.

Parametri

Impostare i valori per questi parametri obbligatori.

Nome TIPO Description
tableName corda Nome logico della tabella in cui aggiornare la riga.
rowId corda ID della riga da aggiornare.
row Oggetto Dati di riga da aggiornare.

Restituzioni

Promessa contenente il risultato dell'operazione. Quando l'operazione ha esito positivo, non restituisce alcun valore.

Example

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

Metodo deleteRow

Elimina una riga dalla tabella specificata.

Parametri

Impostare i valori per questi parametri obbligatori.

Nome TIPO Description
tableName corda Nome logico della tabella in cui eliminare la riga.
rowId corda ID della riga da eliminare.

Restituzioni

Promessa contenente il risultato dell'operazione. Quando l'operazione ha esito positivo, non restituisce alcun valore.

Example

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

Metodo retrieveRow

Recupera una riga dalla tabella specificata utilizzando le opzioni specificate.

Parametri

Impostare i valori per questi parametri obbligatori.

Nome TIPO Description
tableName string Nome logico della tabella da recuperare
options RetrieveRowOptions Opzioni per il recupero della riga

RetrieveRowOptions

Nome TIPO Description
id string ID (GUID) della riga da recuperare
select string[] (Scelta consigliata) Matrice di nomi di colonna da recuperare. Se omesso, vengono restituite tutte le colonne.

Restituzioni

Promessa contenente il risultato dell'operazione. Quando l'operazione ha esito positivo, viene restituito un oggetto contenente i dati del record, incluse tutte le colonne selezionate.

Example

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

Metodo queryTable

Esegue una query su una tabella usando le opzioni specificate.

Parametri

Impostare i valori per questi parametri obbligatori.

Nome TIPO Description
tableName string Nome logico della tabella su cui eseguire una query
query QueryTableOptions Opzioni per l'esecuzione di query sulla tabella

QueryTableOptions

Nome TIPO Description
select string[] (Scelta consigliata) Matrice di nomi di colonna da recuperare.
filter string (Facoltativo) Espressione filtro OData (ad esempio, statecode eq 0).
orderBy string (Facoltativo) Espressione orderby OData (ad esempio, name asc, createdon desc).
pageSize number (Facoltativo) Numero massimo di righe da restituire per pagina.

Restituzioni

Promessa contenente il risultato dell'operazione. Quando l'operazione ha esito positivo, la promessa restituisce un oggetto contenente una tabella dati con i risultati con queste proprietà:

Nome TIPO Description
rows Object[] Matrice di dati di riga
hasMoreRows boolean Indica se sono disponibili più righe
loadMoreRows function Funzione per caricare la pagina successiva dei risultati. (opzionale)

Example

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

Osservazioni:

Annotazioni

Per ottenere prestazioni ottimali, limitare sempre il numero di colonne restituite tramite la proprietà QueryTableOptionsselect .

Metodo getChoices

Recupera le scelte per il nome della colonna di scelta specificata.

Parametri

Questo parametro è obbligatorio.

Nome TIPO Description
enumName string Nome della colonna scelta nel formato tablename-columnname

Restituzioni

Promessa contenente il risultato dell'operazione. Quando l'operazione ha esito positivo, restituisce una matrice delle opzioni di scelta. Ogni opzione ha queste proprietà:

Nome TIPO Description
label corda Valore dell'etichetta localizzata dell'opzione.
value numero Valore numerico dell'opzione.

Example

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