Nocións sobre as orixes de datos para aplicacións de lenzo

En Power Apps, a maioría de aplicacións de lenzo usan información externa almacenada nos servizos na nube chamada Orixes de datos. Un exemplo común é unha táboa dun ficheiro Excel almacenado en OneDrive for Business. As aplicacións acceden a estas orixes de datos mediante Conexións.

Este artigo trata sobre os diferentes tipos de fontes de datos e como traballar con fontes de datos de táboa.

É fácil crear unha aplicación que faga lectura e escritura básicas nunha orixe de datos. Pero ás veces quere máis control sobre como os datos flúen dentro e fóra da súa aplicación. Este artigo describe como as funcións Patche, DataSourceInfo, Validate e Errors proporcionan máis control.

Tipos de orixes de datos

As fontes de datos pódense conectar a un servizo na nube ou poden ser locais para unha aplicación.

Orixes de datos conectadas

As orixe de datos máis comúns son táboas, que pode usar para recuperar e almacenar información. Pode usar conexións a orixes de datos para ler e escribir datos en libros de Microsoft Excel, listas creadas mediante Microsoft Lists, bibliotecas de SharePoint, táboas de SQL e moitos outros formatos, que se poden gardar en servizos na nube como OneDrive for Business, DropBox e SQL Server.

As fontes de datos distintas das táboas son correo electrónico, calendarios, Twitter e notificacións, pero este artigo non trata deste outro tipo de fontes de datos.

Orixes de datos locais

Mediante o uso dos controis Galería, Amosar formulario e Editar formulario, é fácil crear unha aplicación que lea e escriba datos a partir dunha orixe de datos. Para comezar, lea o artigo Comprender formularios de datos.

Cando solicita a Power Apps crear unha aplicación a partir de datos, úsanse estes controis. En segundo plano, a aplicación usa unha táboa interna para almacenar e manipular os datos que proveñen da orixe de datos.

Un tipo especial de orixe de datos é a Colección, que é local para a aplicación e non está respaldada por unha conexión a un servizo na nube, polo que a información non se pode compartir entre dispositivos do mesmo usuario ou entre os usuarios. As coleccións pódense cargar e gardar localmente.

Tipos de táboas

As táboas que son internas para unha aplicación de Power Apps son valores fixos, do mesmo xeito que un número ou unha cadea é un valor. As táboas internas non se gardan en ningún sitio, só existen na memoria da súa aplicación. Non pode modificar directamente a estrutura e os datos dunha táboa. O que pode facer é crear unha nova táboa a través dunha fórmula: empregue esa fórmula para facer unha copia modificada da táboa orixinal.

As táboas externas gárdanse nunha orixe de datos para a posterior recuperación e uso compartido. Power Apps fornece "conexións" para ler e escribir datos almacenados. Dentro dunha conexión, pode acceder a varias táboas de información. Seleccionará que táboas hai que empregar na súa aplicación e cada unha converterase nunha orixe de datos independente.

Para saber máis, Traballar con táboas afonda máis nas táboas internas, pero tamén é aplicable ás táboas externas que residen nun servizo na nube.

Traballar con táboas

Pode usar fontes de datos de táboa do mesmo xeito que usa unha táboa interna de Power Apps. Do mesmo xeito que unha táboa interna, cada orixe de datos ten rexistros, columnas e propiedades que pode usar nas fórmulas. Ademais:

  • A orixe de datos ten os mesmos nomes de columna e tipos de datos que a táboa subxacente na conexión.

    Nota

    Para orixes de datos de SharePoint e Excel que conteñen nomes de columna con espazos, Power Apps substituirá os espazos por "_x0020_". Por exemplo, "Nome da columna" en SharePoint ou Excel aparecerá como "Column_x0020_Name" en Power Apps cando se mostra no esquema de datos ou se usa nunha fórmula.

  • A orixe de datos cárgase automaticamente do servizo cando se carga a aplicación. Pode forzar os datos a actualizar usando a función Refresh.

  • Mentres os usuarios executan unha aplicación, poden crear, modificar e eliminar rexistros e enviar eses cambios de volta á táboa subxacente do servizo.

    • Pódense crear rexistros coas funcións Patch e Collect.
    • Pódense modificar rexistros coas funcións Patch, Update e UpdateIf.
    • Pódense eliminar rexistros coas funcións Remove e RemoveIf.
    • Os erros ao traballar cunha orixe de datos están dispoñibles a través da función Errors.
  • As funcións DataSourceInfo, Defaults e Validate fornecen información sobre a orixe de datos que pode usar para optimizar a experiencia do usuario.

Crear orixes de datos

Power Apps non se pode usar para crear unha orixe de datos conectada nin modificar a súa estrutura; a orixe de datos xa debe existir nun servizo nalgún lugar. Por exemplo, para crear unha táboa nun libro de traballo de Excel almacenado en OneDrive, primeiro use Excel Online en OneDrive para crear un libro de traballo. A continuación cree unha conexión a ela desde a súa aplicación.

Non obstante, as fontes de datos de colección si poden crearse e modificarse dentro dunha aplicación, pero só son temporais.

Amosar un ou varios rexistros

Fluxo de información cando unha aplicación le a información nunha orixe de datos. O diagrama anterior mostra o fluxo de información cando unha aplicación le a información nunha orixe de datos:

  • A información almacénase e compártese a través dun servizo de almacenamento (neste caso, Microsoft Lists ou SharePoint Online).
  • Unha conexión pon a disposición da aplicación esta información. A conexión ocúpase da autenticación do usuario para acceder á información.
  • Cando se inicia a aplicación ou a función Refresh se preme, a información recóllese da conexión a unha orixe de datos na aplicación para uso local.
  • As fórmulas úsanse para ler a información e expoñela en controis que o usuario pode ver. Pode amosar os rexistros dunha orixe de datos usando unha galería nunha pantalla e tramando a propiedade Elementos coa orixe de datos: Gallery.Items = DataSource. Vostede trama controis dentro da galería, para a galería, usando a propiedade "Por defecto dos os controis.
  • A orixe de datos tamén é unha táboa. Así pode usar as funcións Filter, Sort, AddColumns e outras para perfeccionar e aumentar a orixe de datos antes de usala no seu conxunto. Tamén pode usar as funcións Lookup, First, Last e outras para traballar con rexistros individuais.

Modificar un rexistro

Na sección anterior, veu como ler unha orixe de datos. Teña en conta que as frechas do diagrama anterior van nunha única dirección. As modificacións dunha orixe de datos non se envían de volta coas mesmas fórmulas coas que se recuperaron os datos. Pola contra, úsanse novas fórmulas. Moitas veces úsase unha pantalla diferente para editar un rexistro e para navegar en rexistros, especialmente nun dispositivo móbil.

Teña en conta que, para modificar un rexistro existente dunha orixe de datos, o rexistro debe ser orixinariamente da orixe de datos. O rexistro pode ter percorrido unha galería, unha variable de contexto e calquera número de fórmulas, pero a súa orixe debería ser rastrexable ata a orixe de datos. Isto é importante porque a información adicional viaxa co rexistro que o identifica de xeito único, garantindo que modifica o rexistro correcto.

Fluxo de información para actualizar unha orixe de datos. O diagrama anterior mostra o fluxo de información para actualizar unha orixe de datos:

  • Un control de Editar formulario fornece un contedor para tarxetas de entrada, que están compostas por controis de entrada de usuarios como un control de entrada de texto ou un control deslizante. As propiedades DataSource e Elemento úsanse para identificar o rexistro que se vai editar.
  • Cada tarxeta de entrada ten unha propiedade Por defecto, que normalmente se establece no campo do rexistro ThisItem do formulario. Os controis da tarxeta de entrada tomarán os seus valores de entrada do valor por defecto. Normalmente non necesita modificar isto.
  • Cada tarxeta de entrada expón unha propiedade Actualizar. Esta propiedade asigna a entrada do usuario nun campo específico do rexistro para volver escribir na orixe de datos. Normalmente non necesita modificar isto.
  • Un botón ou un control de imaxe na pantalla permítelle ao usuario gardar cambios no rexistro. A fórmula OnSelect do control chama a función SubmitForm para facer este traballo. Enviar Formulario le todas as propiedades de Actualizar das tarxetas e emprega isto para volver escribir na orixe de datos.
  • Ás veces haberá problemas. É posible que unha conexión de rede estea caída ou o servizo realice unha comprobación de validación que a aplicación non coñecía. As prorpiedades Erro e ErrorKind do control de formulario fan que esta información estea dispoñible, para que poida mostrala ao usuario.

Para un control máis preciso dos procesos, tamén se pode usar as funcións Patch e Errors. O control Editar formulario expón unha propiedade de Actualizacións para que poida ler os valores dos campos dentro do formulario. Tamén pode usar esta propiedade para chamar un conector personalizado nunha conexión, evitando completamente as funcións Patch e SubmitForm.

Validación

Antes de facer un cambio nun rexistro, a aplicación debería facer o posible para asegurarse de que o cambio será aceptable. Hai dúas razóns para isto:

  • Comentarios inmediatos para o usuario. O mellor momento para solucionar un problema é xusto cando sucede, cando está fresco na mente do usuario. Literalmente con cada toque ou prema de tecla, pode aparecer texto vermello que identifique un problema coa súa entrada.
  • Menos tráfico de rede e menos latencia de usuarios. Máis problemas detectados na aplicación significa menos conversas na rede para detectar e resolver problemas. Cada conversa leva un tempo durante o cal o usuario debe esperar antes de poder seguir adiante.

Power Apps ofrece dúas ferramentas para a validación:

  • A orixe de datos pode proporcionar información sobre o que é e non é válido. Por exemplo, os números poden ter valores mínimos e máximos e pode ser necesaria unha ou máis entradas. Pode acceder a esta información coa función DataSourceInfo.
  • A función Validate usa esta mesma información para comprobar o valor dunha única columna ou dun rexistro enteiro.

Xestión de erros

Ben, validou o seu rexistro. É hora de actualizar ese rexistro con Patch!

Pero, por desgraza, aínda pode haber un problema. A rede está caída, a validación no servizo fallou ou o usuario non ten os permisos correctos, só por citar algúns dos posibles erros que poden aparecer na súa aplicación. Necesita responder adecuadamente ás situacións de erro, proporcionando comentarios ao usuario e un xeito para que o corrixan.

Cando se producen erros cunha orixe de datos, a aplicación rexistra automaticamente a información de erro e faina dispoñible a través da función Errors. Os erros están asociados cos rexistros que tiveron os problemas. Se o problema é algo que o usuario pode resolver, como un problema de validación, pode volver a enviar o rexistro e eliminaranse os erros.

Se se produce un erro cando se crea un rexistro con Patch ou Collect, non hai rexistro co que asociar os erros. Neste caso, en branco será devolto por Patch e pode usarse como argumento de rexistro para Errors. Os erros de creación elimínanse coa seguinte operación.

A función Errors devolve unha táboa de información de erro. Esta información pode incluír a información da columna, se o erro pode atribuírse a unha determinada columna. Use mensaxes de erro a nivel de columna nos controis de etiquetas próximos a onde se atopa a columna na pantalla de edición. Use mensaxes de erro a nivel de rexistro onde a Columna na táboa de erros está en branco, nunha situación próxima ao botón Gardar para todo o rexistro.

Traballar con grandes fontes de datos

Cando está a crear informes de grandes fontes de datos (quizais millóns de rexistros), quere minimizar o tráfico da rede. Digamos que quere informar sobre todos os clientes que teñan un StatusCode de "Platinum" na cidade de Nova York. E que a táboa de clientes contén millóns de rexistros.

Vostede non quere introducir eses millóns de clientes na súa aplicación e logo escoller os que quere. O que desexa é que esa elección se produza dentro do servizo na nube onde está almacenada a táboa e envíe só os rexistros escollidos a través da rede.

Pódense utilizar moitas funcións, pero non todas poden ser delegadas, o que significa que se executan dentro do servizo na nube. Pode aprender a facelo lendo sobre Delegación.

Coleccións

As coleccións son un tipo especial de orixe de datos. Son locais para a aplicación e non está respaldadas por unha conexión a un servizo na nube, polo que a información non se pode compartir entre dispositivos do mesmo usuario nin entre os usuarios. Operan como calquera outra orixe de datos, con algunhas excepcións:

  • Pódense crear coleccións de forma dinámica coa función Collect. Non é preciso que se establezan antes de tempo, como fan as fontes de datos baseadas en conexión.
  • As columnas dunha colección poden modificarse en calquera momento usando a función Collect.
  • As coleccións permiten duplicar rexistros. Máis dunha copia do mesmo rexistro pode existir nunha colección. Funcións como Remove operarán na primeira coincidencia que atopen, a menos que o argumento All sexa proporcionado.
  • Pode usar as funcións SaveData e LoadData para gardar e volver cargar unha copia da colección. A información almacénase nunha localización privada á que non poden acceder outros usuarios, aplicacións ou dispositivos.
  • Pode usar os controis Exportar e Importar para gardar e volver cargar unha copia da colección nun ficheiro co que o usuario pode interactuar.

Para obter máis información sobre o traballo cunha colección como orixe de datos, consulte crear e actualizar unha colección.

As coleccións úsanse comunmente para manter o estado global da aplicación. Vexa traballar con variables para coñecer as opcións dispoñibles para a xestión do estado.

Nota

Pode indicarnos as súas preferencias para o idioma da documentación? Realice unha enquisa breve. (teña en conta que esa enquisa está en inglés)

Esta enquisa durará sete minutos aproximadamente. Non se recompilarán datos persoais (declaración de privacidade).