Crear unha galería de pedidos nunha aplicación de lenzo
Siga as instrucións paso a paso para crear unha galería de pedidos nunha aplicación de lenzo para xestionar datos ficticios na base de datos de Northwind Traders. Este tema forma parte dunha serie que explica como compilar unha aplicación empresarial con datos relacionais en Microsoft Dataverse. Para obter os mellores resultados, explore estes temas nesta secuencia:
- Crear unha galería de pedidos (este tema).
- Crear un formulario de resumo.
- Crear unha galería de detalles.
Requisitos previos
- Instalar a base de datos e as aplicacións de Northwind Traders.
- Lea a visión xeral da aplicación de lenzo de Northwind Traders.
Crear unha aplicación en branco
Cree unha aplicación de lenzo en branco e déalle un nome como "Os meus pedidos de Northwind (aplicación de lenzo)".
Engadir os datos
No panel esquerdo, seleccione Datos > Engadir datos > busque e seleccione a táboa Pedidos.
A táboa Pedidos contén moitos campos de varios tipos:
Cada campo ten un Nome para mostrar e un Nome, que ás veces se chama nome lóxico. Os dous nomes refírense ao mesmo. En xeral, usará o nome para mostrar cando cree unha aplicación, pero algúns casos requiren o Nome máis críptico, como se sinala nun procedemento.
Como imos traballar con pantallas e controis a continuación, en Power Apps Studio volva á Visualización en árbore á esquerda premendo a icona de tres cadrados amoreados. Pode volver a Orixes de datos en calquera momento, premendo a icona do cilindro.
Crear a galería do pedido
No separador Inserir, seleccione Galería > Vertical en branco para engadir unha control Galería, que mostrará os pedidos.
O control colocarase sobre o lenzo e aparecerá un diálogo flotante que preguntará a que orixe de datos se debe conectar.
Poderiamos conectalo directamente a Pedidos aquí, pero no seu lugar queremos controlar a orde de ordenación da galería. Ignore o diálogo flotante e na barra de fórmulas establece a propiedade Elementos da galería nesta fórmula:
Sort( Orders, 'Order Number', Descending )
A función Sort ordena a lista para que apareza primeiro a orde máis recente (que ten o número de orde máis alto).
Despois duns momentos, a vista de resultados aparecerá debaixo da barra de fórmulas. Extraia na frecha á esquerda para ver o resultado da nosa fórmula. Desprácese cara á dereita para ver a columna Número de pedido e asegúrese de que estea ordenada como quere (maior a menor).
No separador Propiedades preto do bordo dereito, abra a lista Deseño:
Na lista de opcións, seleccione Título e subtítulo:
Engádense dous controis Etiqueta no modelo da galería. Por defecto, estes controis amosan dúas columnas da táboa Pedidos, que cambiará a continuación. O modelo da galería replícase verticalmente para cada rexistro da táboa.
Seleccione Editar (xunto a Campos) no separador Propiedades preto do bordo dereito.
No panel Datos, seleccione Title1 (ou seleccione a etiqueta superior no modelo da galería).
Na barra de fórmulas, axuste a propiedade Texto da etiqueta nesta expresión:
"Order " & ThisItem.'Order Number'
O número de pedido aparece na parte superior de cada elemento da galería. No modelo da galería, ThisItem concede acceso a todos os campos da táboa Pedido.
No panel Datos, seleccione Subtitle1 (ou seleccione a etiqueta inferior no modelo da galería):
Na barra de fórmulas, axuste a propiedade Texto da etiqueta nesta expresión:
ThisItem.Customer.Company
Despois de introducir esta fórmula, pode mostrar un erro de zigzag de cor vermella por un momento. O erro debería borrarse se selecciona algo fóra da barra de fórmulas e logo devolve o cursor á barra de fórmulas. Se o erro persiste ou non ve ningún valor, seleccione o separador Ver, seleccione Orixes de datos e, a continuación, actualice a táboa Pedidos seleccionando os puntos suspensivos (...) á dereita do nome da orixe de datos.
Cando especifica ThisItem.Customer, está a aproveitar unha relación de varios a un entre as táboas Pedidos e Clientes e a recuperar o rexistro do cliente asociado a cada pedido. Do rexistro de clientes, extrae datos na columna Empresa para mostrar.
Pode amosar todas as relacións da táboa Pedidos a outras táboas, incluída a táboa Cliente:
Peche o panel Datos seleccionando a icona de peche (x) na esquina superior dereita.
Mostrar o estado de cada pedido
Neste procedemento, engadirá espazo na galería para unha etiqueta e configuraraa para que mostre o estado de cada pedido nunha cor diferente en función dos datos.
No modelo da galería, reduza a largura da primeira etiqueta, Título1:
Repita o paso anterior coa segunda etiqueta, Subtítulo1:
Co modelo de galería (ou un control do modelo) seleccionado, seleccione Etiqueta no separador Inserir:
Mova a nova etiqueta á parte dereita da etiqueta Título1:
Axuste a propiedade Texto da nova etiqueta nesta expresión:
ThisItem.'Order Status'
Na táboa Pedidos, o campo Estado do pedido contén un valor da elección Estado dos pedidos. Unha elección é similar a unha enumeración noutras ferramentas de programación. Cada conxunto de opcións está definido na base de datos, polo que os usuarios só poden especificar aquelas opcións que están no conxunto. A elección Estado dos pedidos tamén é global, non local, polo que pode usala noutras táboas:
Cada opción dun conxunto ten un nome que aparece se o mostra nunha etiqueta. Pódense localizar estes nomes e a aplicación recoñece a mesma opción se un usuario inglés selecciona Apple, un usuario francés selecciona Pomme ou un usuario español selecciona Manzana. Por este motivo, non pode crear unha fórmula que dependa dunha cadea codificada para unha opción, como se demostra neste tema máis tarde.
Nas fórmulas, debe rodear Estado do pedido con comiñas simples, porque contén un espazo. Non obstante, ese nome funciona do mesmo xeito que calquera outro nome en Power Apps, como Cliente ou Empresa.
No separador Inicio, aumente o tamaño do tipo de letra da etiqueta de estado a 20 puntos e aliñe o texto á dereita:
Na barra de fórmulas, axuste a propiedade Cor da etiqueta de estado nesta fórmula:
Switch( ThisItem.'Order Status', 'Orders Status'.Closed, Green, 'Orders Status'.New, Black, 'Orders Status'.Invoiced, Blue, 'Orders Status'.Shipped, Purple )
Power Apps impide que cree unha fórmula que se basea nunha cadea codificada para cada opción dun conxunto porque tales fórmulas poden producir resultados inadecuados se os nomes das opcións están localizados. Pola contra, a función Switch determina a cor baseándose en calquera das cadeas que aparezan na etiqueta en función das configuracións do usuario.
Con esta fórmula no seu lugar, aparecen diferentes valores de estado en diferentes cores, como mostra a gráfica anterior.
Mostrar o total de cada pedido
Seleccione o primeiro elemento da galería, que é o modelo da galería:
No separador Inserir, seleccione Etiqueta para engadir outra etiqueta:
Mova a nova etiqueta para que apareza baixo a etiqueta de estado:
Na barra de fórmulas, axuste a propiedade Texto da nova etiqueta nesta fórmula:
Text( Sum( ThisItem.'Order Details', Quantity * 'Unit Price' ), "[$-en-US]$ #,###.00" )
Nesta fórmula, a función Sum suma os rexistros na táboa Detalles do pedido que están asociados a cada rexistro na táboa Pedido a través dunha relación de un a varios. Estes elementos de liña corresponden a cada pedido e empregará a mesma relación un a varios para mostrar e editar os elementos de liña na parte inferior dereita da pantalla.
Esta fórmula mostra un subliñado azul e un aviso de delegación porque Dataverse non admite a delegación de funcións agregadas complexas (por exemplo, a suma dunha multiplicación). Pode ignorar esta información porque ningún pedido deste exemplo conterá máis de 500 elementos de liña. Se é necesario para unha aplicación diferente, pode aumentar ese límite na Configuración da aplicación.
A función Text nesta fórmula engade un símbolo de moeda e formata o resultado con separadores decimais e de miles. Como está escrita, a fórmula inclúe a etiqueta de idioma para inglés dos Estados Unidos ([$-en-US]) e un símbolo de dólar ($). Se elimina a etiqueta de idioma, substituirase por unha baseada na súa configuración de idioma e a etiqueta mostrará os formatos axeitados para esa etiqueta. Se deixa o símbolo do dólar, a etiqueta mostrará o símbolo de moeda adecuado en función da configuración do usuario. Non obstante, pode forzar que apareza un símbolo diferente substituíndo o símbolo do dólar polo que prefira.
No separador Inicio, cambie o tamaño do tipo de letra da etiqueta máis nova a 20 puntos e aliñe o seu texto á dereita:
Mova a galería ao bordo esquerdo da pantalla e diminúa a largura da galería para pechar algún espazo.
Aumente a altura da galería de xeito que sexa case tan alta como a pantalla, pero deixe un pequeno espazo na parte superior para unha barra de título, que engadirá ao comezo do seguinte tema:
Resumo
Para recapitular, comezou a crear unha aplicación de lenzo cunha única pantalla engadindo a galería de pedidos, que inclúe estes elementos:
- Unha expresión para mostrar o número de pedido:
"Orders " & ThisItem.OrderNumber
- Un campo dunha relación de varios a un:
ThisItem.Customer.Company
- Unha etiqueta que mostra o nome dunha opción nun conxunto:
ThisItem.'Order Status'
- Unha etiqueta que cambia de formato en función da opción dun conxunto que se mostra na etiqueta:
Switch( ThisItem.'Order Status', 'Orders Status'.Closed, Green, ...
- Unha función agregada complexa sobre unha relación un a varios:
Sum( ThisItem.'Order Details', Quantity * 'Unit Price' )
Tema seguinte
No seguinte tema, engadirá un control Editar formulario para mostrar e editar un resumo de calquera pedido que o usuario seleccione na galería que acaba de crear.
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).
Comentarios
https://aka.ms/ContentUserFeedback.
Proximamente: Ao longo de 2024, retiraremos gradualmente GitHub Issues como mecanismo de comentarios sobre o contido e substituirémolo por un novo sistema de comentarios. Para obter máis información, consulte:Enviar e ver os comentarios