Compartir por


Referencia dataApi para páxinas xerativas

Cando xeras unha páxina usando linguaxe natural, a IA crea unha páxina de React en TypeScript. A páxina xerada cobre tanto a experiencia do usuario front-end seleccionando os compoñentes axeitados e determinando o mellor deseño, como a lóxica de negocio correspondente.

Podes ver e editar o código xerado para refinar a saída. As operacións de datos usan un dataApi obxecto que expón os seguintes métodos públicos:

Método Descripción
createRow Crea unha nova fila na táboa especificada.
updateRow Actualiza unha fila existente na táboa especificada.
deleteRow Elimina unha fila da táboa especificada.
retrieveRow Recupera unha fila da táboa especificada coas opcións especificadas.
queryTable Consulta unha táboa coas opcións especificadas.
getChoices Recupera as opcións para o nome da columna de elección especificado.

createRow Método

Crea unha nova fila na táboa especificada.

Parámetros

Establece valores para estes parámetros requiridos.

Nome Tipo Descripción
tableName cadea O nome lóxico da táboa para crear a fila.
row obxecto Os datos de fila para crear.

Devolucións

Unha promesa que contén o resultado da operación. Cando a operación ten éxito, o resultado é o valor ID (Guid) da fila creada.

Exemplo

// 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 Método

Actualiza unha fila existente na táboa especificada.

Parámetros

Establece valores para estes parámetros requiridos.

Nome Tipo Descripción
tableName cadea O nome lóxico da táboa para actualizar a fila.
rowId cadea O ID da fila para actualizar.
row Obxecto Os datos da fila para actualizar.

Devolucións

Unha promesa que contén o resultado da operación. Cando a operación ten éxito, non devolve ningún valor.

Exemplo

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 Método

Elimina unha fila da táboa especificada.

Parámetros

Establece valores para estes parámetros requiridos.

Nome Tipo Descripción
tableName cadea O nome lóxico da táboa para eliminar a fila.
rowId cadea O ID da fila para eliminar.

Devolucións

Unha promesa que contén o resultado da operación. Cando a operación ten éxito, non devolve ningún valor.

Exemplo

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

retrieveRow Método

Recupera unha fila da táboa especificada usando as opcións especificadas.

Parámetros

Establece valores para estes parámetros requiridos.

Nome Tipo Descripción
tableName string O nome lóxico da táboa a recuperar de
options RetrieveRowOptions Opcións para recuperar a fila

RetrieveRowOptions

Nome Tipo Descripción
id string O ID (Guid) da fila a recuperar
select string[] (Recomendado) Array de nomes de columnas para recuperar. Se se omite, todas as columnas devolven.

Devolucións

Unha promesa que contén o resultado da operación. Cando a operación ten éxito, devolve un obxecto que contén os datos do rexistro, incluíndo todas as columnas seleccionadas.

Exemplo

// 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 Método

Consulta unha táboa usando as opcións especificadas.

Parámetros

Establece valores para estes parámetros requiridos.

Nome Tipo Descripción
tableName string O nome lóxico da táboa a consultar
query QueryTableOptions Opcións para consultar a táboa

QueryTableOptions

Nome Tipo Descripción
select string[] (Recomendado) Array de nomes de columnas para recuperar.
filter string (Opcional) Expresión do filtro OData (por exemplo, statecode eq 0).
orderBy string (Opcional) OData orde por expresión (por exemplo, name asc, createdon desc).
pageSize number (Opcional) Número máximo de filas para devolver por páxina.

Devolucións

Unha promesa que contén o resultado da operación. Cando a operación ten éxito, a promesa devolve un obxecto que contén unha táboa de datos cos resultados con estas propiedades:

Nome Tipo Descripción
rows Object[] Matriz de datos de fila
hasMoreRows boolean Indica se hai máis filas dispoñibles
loadMoreRows function Función para cargar a seguinte páxina de resultados. (Opcional)

Exemplo

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

Observacións

Nota

Para un mellor rendemento, sempre limita o número de columnas devoltas usando a propiedade QueryTableOptionsselect .

getChoices Método

Recupera as opcións para o nome da columna de elección especificado.

Parámetros

Este parámetro é necesario.

Nome Tipo Descripción
enumName string O nome da columna de elección no formato tablename-columnname

Devolucións

Unha promesa que contén o resultado da operación. Cando a operación ten éxito, devolve un array das opcións de elección. Cada opción ten estas propiedades:

Nome Tipo Descripción
label cadea O valor da etiqueta localizada da opción.
value Número O valor numérico da opción.

Exemplo

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