Nocións acerca dos cartóns de datos nas aplicacións de lenzo

Os controis de Tarxeta son os bloques de construción dos controis Editar formulario e Mostrar Formulario en aplicacións de lenzo. O formulario representa todo o rexistro e cada tarxeta representa un único campo dese rexistro.

Pode interactuar con tarxetas máis facilmente no panel da dereita despois de seleccionar un control de formulario no espazo de traballo de deseño. Nese panel, pode escoller que campos mostrar, como amosar cada campo e en que orde amosalos. Este exemplo mostra un control Editar formulario nunha aplicación creada a partir dunha lista que leva o nome de Activos.

Primeira pantalla.

Para comezar coas tarxetas, consulte engadir un formulario e comprender os formularios de datos. O resto deste artigo fala máis detalladamente sobre como funcionan as tarxetas e como pode personalizar ou incluso crear as súas.

Tarxetas predefinidas

Power Apps ofrece un conxunto predefinido de tarxetas para cadeas, números e outros tipos de datos. No panel da dereita pode ver as variacións dispoñibles e cambiar a tarxeta usada para un campo:

Tarxeta seleccionada.

Neste exemplo, selecciónase unha tarxeta de texto dunha soa liña, pero o texto do URL é máis longo do que se pode amosar nunha soa liña. Cambiemos isto a unha tarxeta de texto de varias liñas para ofrecer aos nosos usuarios máis espazo para editar:

Edición de varias liñas.

Non se amosan varios campos desta orixe de datos, pero pode mostrar ou ocultar un campo seleccionando a súa caixa de verificación. Este exemplo ilustra como amosar o campo SecurityCode.

Personalizar un cartón

As tarxetas inclúen outros controis. Nun control de Editar formulario, o usuario introduce datos nun control estándar de Entrada de texto que vostede engade dende o formulario Inserir.

Imos ver un exemplo de como cambiar o aspecto dunha tarxeta manipulando controis nela.

  1. En primeiro lugar, volvemos á tarxeta que inserimos máis recentemente, para o campo SecurityCode. Seleccione esta tarxeta facendo clic ou tocándoa unha vez:

    Seleccionar código de seguranza.

  2. Seleccione o control Entrada de texto dentro da tarxeta facendo clic ou tocando o propio control de entrada.

    Seleccione a entrada de texto.

  3. Mova este control dentro da tarxeta arrastrando a caixa de selección e redimensione o control arrastrando os punteiros polo bordo da caixa de selección:

    Personalizar entrada de texto.

Pode cambiar o tamaño, mover e facer outras modificacións nos controis dentro dunha tarxeta, pero non pode eliminala sen desbloqueala primeiro.

Desbloquear unha tarxeta

Ademais de conter controis, as tarxetas en si son controis que teñen propiedades e fórmulas como calquera outro control. Cando elixe amosar un campo nun formulario, o panel dereito crea automaticamente a tarxeta e xera as fórmulas necesarias. Aquí podemos ver estas fórmulas no separador Avanzado do panel da dereita:

Bloqueo avanzado.

De seguido vemos unha das propiedades máis importantes da tarxeta: a propiedade DataField. Esta propiedade indica o campo da orixe de datos que o usuario ve e pode editar nesta tarxeta.

No separador Avanzado, a faixa na parte superior indica que as propiedades desta tarxeta están bloqueadas. Tamén aparece unha icona de bloqueo xunto ás propiedades DataField, DisplayName e Necesario. O panel da dereita creou estas fórmulas e o bloqueo impide cambios accidentais nestas propiedades.

Iconas de bloqueo.

Faga clic ou toque a faixa na parte superior para desbloquear a tarxeta para que poida modificar estas propiedades:

Tarxeta desbloqueada.

Imos modificar DisplayName para poñer un espazo entre Activo e ID. Ao facer este cambio, imos modificando o que se xerou para nós. No panel dereito, esta tarxeta ten unha etiqueta diferente:

Cambiar nome para mostrar.

Tomamos agora o control desta tarxeta e podemos modificala aínda máis para satisfacer as nosas necesidades. Pero perdemos a posibilidade de cambiar a tarxeta dunha representación a outra (por exemplo, texto dunha soa liña a texto de varias liñas) como fixemos antes. Transformamos a tarxeta predefinida nunha "tarxeta personalizada" que agora controlamos.

Importante

Non pode volver a bloquear unha tarxeta se a desbloqueou. Para reverter unha tarxeta a un estado bloqueado, elimínea e volva inserila no panel da dereita.

Pode cambiar o aspecto e o comportamento dunha tarxeta desbloqueada de varias formas, como engadir e eliminar os controis dentro dela. Por exemplo, pode engadir unha forma de estrela desde o menú Iconas no separador Inserir.

Engadir estrela.

A estrela agora forma parte da tarxeta e viaxará con ela se, por exemplo, reordena as tarxetas dentro do formulario.

Como outro exemplo, desbloquee a tarxeta ImageURL e logo engádalle un control de Imaxe desde o separador Inserir:

Engadir imaxe.

Na barra de fórmulas, estableza a propiedade Imaxe deste control en TextBox. Texto, onde TextBox é o nome do control de Entrada de texto que contén o URL:

Mostrar imaxe.

E agora podemos ver as imaxes e editar os seus URL. Teña en conta que puidemos usar Parent.Default como a propiedade de Imaxe, pero non se actualizaría se o usuario cambiase o URL.

Podemos facer o mesmo na segunda pantalla desta aplicación, onde empregamos un control de Mostrar formulario para mostrar os detalles dun rexistro. Neste caso, talvez queremos ocultar a etiqueta (establecer a propiedade Visible da etiqueta, non a tarxeta, en falso) porque o usuario non editará o URL nesa pantalla:

Mostrar visualización da imaxe.

Interactuar cun formulario

Despois de desbloquear unha tarxeta, pode cambiar o xeito en que interactúa co formulario que a contén.

A continuación móstranse algunhas directrices para o funcionamento dos controis coa súa tarxeta e como deben funcionar as tarxetas co formulario. Estas son só directrices. Como con calquera control en Power Apps, pode crear fórmulas que fagan referencia a calquera outro control en Power Apps, e iso non é menos certo para tarxetas e controis dentro de tarxetas. Sexa creativo: pode crear unha aplicación de moitos xeitos.

Propiedade DataField

A propiedade máis importante da tarxeta é a propiedade DataField. Esta propiedade conduce a validación, que campo se actualiza e outros aspectos da tarxeta.

Información entrante

Como recipiente, o formulario fai dispoñible ThisItem para todas as tarxetas dentro del. Este rexistro contén todos os campos do rexistro de interese actual.

A propiedade Valor predefinido de cada tarxeta debe estar definida en ThisItem.FieldName. En determinadas circunstancias, pode querer transformar este valor no camiño de entrada. Por exemplo, pode querer formatar unha cadea ou traducir o valor dun idioma a outro.

Cada control dentro da tarxeta debe facer referencia a Parent.Default para obter o valor do campo. Esta estratexia proporciona un nivel de encapsulado para a tarxeta para que a propiedade Valor por defecto da tarxeta poida cambiarse sen cambiar as fórmulas internas da tarxeta.

Por defecto, as propiedades DefaultValue e Necesario están tomadas dos metadatos de orixe de datos en función da propiedade DataField. Pode anular estas fórmulas coa súa propia lóxica, integrando os metadatos da orixe de datos usando a función DataSourceInfo.

Información saínte

Despois de que o usuario modifique un rexistro usando controis nas tarxetas, a función SubmitForm garda estes cambios na orixe de datos. Cando se executa esa función, o control de formulario le os valores de cada propiedade DataField da tarxeta para saber que campo cambiar.

O control de formulario tamén le o valor de cada propiedade Actualizar da tarxeta. Este valor gardarase na orixe de datos para este campo. Este é o lugar onde aplicar outra transformación, quizais para reverter a transformación que se aplicou na fórmula Por defecto da tarxeta.

A propiedade Válido deriva dos metadatos da orixe de datos, en función da propiedade DataField. Tamén está baseada na propiedade Necesario e se a propiedade Actualizar contén un valor. Se o valor que está na propiedade Actualizar non é válido, a propiedade Erro proporciona unha mensaxe de erro descritiva.

Se propiedade DataField dunha tarxeta está en branco, a tarxeta é só un contedor de controis. As súas propiedades Válido e Actualizar non participan cando se envía o formulario.

Dissección dun exemplo

Vexamos os controis que compoñen unha tarxeta básica de entrada de datos. Aumentouse o espazo entre os controis para mostrarse máis claramente:

Tarxeta de disección.

Neste gráfico etiquetáronse os controis dentro da tarxeta de datos:

Tarxetas de disección.

Catro controis fan que esta tarxeta funcione:

Nome Tipo Descripción
TextRequiredStar Control de etiqueta Mostra unha estrela, que se usa habitualmente nos formularios de entrada de datos para indicar que é necesario un campo.
TextFieldDisplayName Control de etiqueta Mostra o nome descritivo deste campo. Este nome pode diferir do que está no esquema da orixe de datos.
InputText Control de entrada de texto Mostra o valor inicial do campo e permítelle ao usuario cambiar ese valor.
TextErrorMessage Control de etiqueta Mostra unha mensaxe de erro descritiva para o usuario se se produce un problema coa validación. Tamén garante que o campo ten un valor se é necesario.

Para preencher estes controis con datos, as súas propiedades pódense xerar das propiedades da tarxeta, a través destas fórmulas clave. Teña en conta que as fórmulas fan referencia a un campo específico. Pola contra, toda a información provén da tarxeta.

Propiedade de control Fórmula Descripción
TextRequiredStar.Visible Parent.Required A estrela só aparece se o campo é obrigatorio. Necesario é unha fórmula xerada por vostede ou polos metadatos da orixe de datos.
TextFieldDisplayName.Text Parent.DisplayName O control de caixa de texto mostra o nome descritivo, que vostede ou os metadatos da orixe de datos fornecen e que está configurado na propiedade DisplayName da tarxeta.
InputText.Default Parent.Default O control de entrada de texto mostra inicialmente o valor do campo da orixe de datos, como foi fornecido polo valor predeterminado da tarxeta.
TextErrorMessage.Text Parent.Error Se se produce un problema de validación, a propiedade de Erro da tarxeta proporciona unha mensaxe de erro apropiada.

Nota

A propiedade Parent.Error é unha propiedade só de saída que non pode establecer mediante unha fórmula. Polo tanto, esta propiedade non aparecerá na lista de propiedades preto da esquina superior esquerda ou nos separadores Propiedades ou Avanzado preto do bordo dereito. A barra de fórmulas suxire esta propiedade se está escribindo unha fórmula que poida facer referencia á propiedade.

Para extraer información destes controis e enviala de volta á orixe de datos, temos as seguintes fórmulas clave:

Nome do control Fórmula Descripción
DataCard.DataField "ApproverEmail" O nome do campo que o usuario pode amosar e editar nesta tarxeta.
DataCard.Update InputText.Text O valor para validar e volver enviar de volta á orixe de datos cando se executa**SubmitForm**.

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).