Metodi di tabella dataverse per le pagine generative

Utilizzare i metodi di tabella dell'oggetto dataApi per creare, recuperare, aggiornare ed eliminare righe di tabella Dataverse ed eseguire query sulle colonne scelte.

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

Metodo createRow

Crea una nuova riga nella tabella specificata.

Parameters

Impostare i valori per questi parametri obbligatori.

Name Type Description
tableName string Nome logico della tabella in cui creare la riga.
row object Dati di riga da creare.

Returns

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

Esempio di createRow

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

Elimina una riga dalla tabella specificata.

Parameters

Impostare i valori per questi parametri obbligatori.

Name Type Description
tableName string Nome logico della tabella in cui eliminare la riga.
rowId string ID della riga da eliminare.

Returns

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

Esempio di deleteRow

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

Metodo getChoices

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

Parameters

Questo parametro è obbligatorio.

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

Returns

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

Name Type Description
label string Valore dell'etichetta localizzata dell'opzione.
value number Valore numerico dell'opzione.

Esempio di getChoices

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

Metodo queryTable

Esegue una query su una tabella usando le opzioni specificate.

Parameters

Impostare i valori per questi parametri obbligatori.

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

QueryTableOptions

Name Type 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.

Returns

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à:

Name Type 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)

Esempio di queryTable

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

Remarks

Annotazioni

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

Metodo retrieveRow

Recupera una riga dalla tabella specificata utilizzando le opzioni specificate.

Parameters

Impostare i valori per questi parametri obbligatori.

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

RetrieveRowOptions

Name Type 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.

Returns

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

Esempio di retrieveRow

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

Aggiorna una riga esistente nella tabella specificata.

Parameters

Impostare i valori per questi parametri obbligatori.

Name Type Description
tableName string Nome logico della tabella in cui aggiornare la riga.
rowId string ID della riga da aggiornare.
row Object Dati di riga da aggiornare.

Returns

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

Esempio updateRow

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