Méthodes de table Dataverse pour les pages génératives

Utilisez les méthodes de table de l’objet dataApi pour créer, récupérer, mettre à jour et supprimer des lignes de table Dataverse et des colonnes de choix de requête.

Méthode Description
createRow Crée une ligne dans la table spécifiée.
deleteRow Supprime une ligne de la table spécifiée.
getChoices Récupère les choix du nom de colonne de choix spécifié.
queryTable Interroge une table avec les options spécifiées.
retrieveRow Récupère une ligne à partir de la table spécifiée avec les options spécifiées.
updateRow Met à jour une ligne existante dans la table spécifiée.

méthode createRow

Crée une ligne dans la table spécifiée.

Parameters

Définissez des valeurs pour ces paramètres requis.

Name Catégorie Description
tableName string Nom logique de la table dans laquelle créer la ligne.
row object Données de ligne à créer.

Returns

Promesse contenant le résultat de l’opération. Lorsque l’opération réussit, le résultat est la valeur ID (Guid) de la ligne créée.

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

méthode deleteRow

Supprime une ligne de la table spécifiée.

Parameters

Définissez des valeurs pour ces paramètres requis.

Name Catégorie Description
tableName string Nom logique de la table dans laquelle supprimer la ligne.
rowId string ID de la ligne à supprimer.

Returns

Promesse contenant le résultat de l’opération. Lorsque l’opération réussit, elle ne retourne aucune valeur.

exemple deleteRow

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

méthode getChoices

Récupère les choix du nom de colonne de choix spécifié.

Parameters

Ce paramètre est obligatoire.

Name Catégorie Description
enumName string Nom de la colonne de choix au format tablename-columnname

Returns

Promesse contenant le résultat de l’opération. Lorsque l’opération réussit, elle retourne un tableau des options de choix. Chaque option a les propriétés suivantes :

Name Catégorie Description
label string Valeur d’étiquette localisée de l’option.
value Numéro Valeur numérique de l’option.

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

méthode queryTable

Interroge une table à l’aide des options spécifiées.

Parameters

Définissez des valeurs pour ces paramètres requis.

Name Catégorie Description
tableName string Nom logique de la table à interroger
query QueryTableOptions Options d’interrogation de la table

QueryTableOptions

Name Catégorie Description
select string[] (Recommandé) Tableau de noms de colonnes à récupérer.
filter string (Facultatif) Expression de filtre OData (par exemple, statecode eq 0).
orderBy string (Facultatif) Expression OData orderby (par exemple, name asc, createdon desc).
pageSize number (Facultatif) Nombre maximal de lignes à retourner par page.

Returns

Promesse contenant le résultat de l’opération. Une fois l’opération réussie, la promesse retourne un objet contenant une table de données avec les résultats avec les propriétés suivantes :

Name Catégorie Description
rows Object[] Tableau de données de ligne
hasMoreRows boolean Indique s’il y a plus de lignes disponibles
loadMoreRows function Fonction pour charger la page suivante des résultats. (Facultatif)

exemple 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

Remarque

Pour des performances optimales, limitez toujours le nombre de colonnes retournées à l’aide de la propriété QueryTableOptionsselect .

méthode retrieveRow

Récupère une ligne à partir de la table spécifiée à l’aide des options spécifiées.

Parameters

Définissez des valeurs pour ces paramètres requis.

Name Catégorie Description
tableName string Nom logique de la table à récupérer à partir de
options RetrieveRowOptions Options de récupération de la ligne

RetrieveRowOptions

Name Catégorie Description
id string ID (GUID) de la ligne à récupérer
select string[] (Recommandé) Tableau de noms de colonnes à récupérer. En cas d’omission, toutes les colonnes sont retournées.

Returns

Promesse contenant le résultat de l’opération. Lorsque l’opération réussit, elle retourne un objet avec les données d’enregistrement, y compris toutes les colonnes sélectionnées.

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

méthode updateRow

Met à jour une ligne existante dans la table spécifiée.

Parameters

Définissez des valeurs pour ces paramètres requis.

Name Catégorie Description
tableName string Nom logique de la table dans laquelle mettre à jour la ligne.
rowId string ID de la ligne à mettre à jour.
row Object Données de ligne à mettre à jour.

Returns

Promesse contenant le résultat de l’opération. Lorsque l’opération réussit, elle ne retourne aucune valeur.

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