Compartir por


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:

  1. Crear unha galería de pedidos (este tema).
  2. Crear un formulario de resumo.
  3. Crear unha galería de detalles.

Definición das áreas da pantalla.

Requisitos previos

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

  1. No panel esquerdo, seleccione Datos > Engadir datos > busque e seleccione a táboa Pedidos.

    Seleccione Ver, Orixes de datos, Engadir orixe de datos.

    A táboa Pedidos contén moitos campos de varios tipos:

    Lista de campos da táboa Pedidos.

    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.

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

  1. No separador Inserir, seleccione Galería > Vertical en branco para engadir unha control Galería, que mostrará os pedidos.

    Inserir, Galería, Vertical en branco.

    O control colocarase sobre o lenzo e aparecerá un diálogo flotante que preguntará a que orixe de datos se debe conectar.

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

    Ordenar pedidos na galería.

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

    Establecer a propiedade Elementos da galería.

  4. No separador Propiedades preto do bordo dereito, abra a lista Deseño:

    Lista de opcións de deseño.

  5. Na lista de opcións, seleccione Título e subtítulo:

    Seleccionar un deseño.

    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.

  6. Seleccione Editar (xunto a Campos) no separador Propiedades preto do bordo dereito.

    Seleccionar editar para actualizar campos.

  7. No panel Datos, seleccione Title1 (ou seleccione a etiqueta superior no modelo da galería).

  8. Na barra de fórmulas, axuste a propiedade Texto da etiqueta nesta expresión:

    "Order " & ThisItem.'Order Number'
    

    Configurar a propiedade Texto da etiqueta do título.

    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.

  9. No panel Datos, seleccione Subtitle1 (ou seleccione a etiqueta inferior no modelo da galería):

    Seleccionar etiqueta de subtítulo.

  10. Na barra de fórmulas, axuste a propiedade Texto da etiqueta nesta expresión:

    ThisItem.Customer.Company
    

    Configurar a propiedade Texto da etiqueta do subtítulo.

    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:

    Lista de relacións.

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

  1. No modelo da galería, reduza a largura da primeira etiqueta, Título1:

    Título1 no modelo da galería.

  2. Repita o paso anterior coa segunda etiqueta, Subtítulo1:

    Subtítulo1 no modelo da galería.

  3. Co modelo de galería (ou un control do modelo) seleccionado, seleccione Etiqueta no separador Inserir:

    Engadir unha etiqueta.

  4. Mova a nova etiqueta á parte dereita da etiqueta Título1:

    Mover e redimensionar unha etiqueta.

  5. Axuste a propiedade Texto da nova etiqueta nesta expresión:

    ThisItem.'Order Status'
    

    Configurar a propiedade Texto.

    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:

    Elección Estado dos pedidos.

    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.

  6. No separador Inicio, aumente o tamaño do tipo de letra da etiqueta de estado a 20 puntos e aliñe o texto á dereita:

    Cambiar o aliñamento e o tamaño do tipo de letra.

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

    Establecer a propiedade Cor da etiqueta de estado.

    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

  1. Seleccione o primeiro elemento da galería, que é o modelo da galería:

    Seleccionar o modelo de galería.

  2. No separador Inserir, seleccione Etiqueta para engadir outra etiqueta:

    Engadir outra etiqueta.

  3. Mova a nova etiqueta para que apareza baixo a etiqueta de estado:

    Redimensionar e mover a nova etiqueta.

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

    Fórmula para calcular o custo total dun pedido.

    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.

  5. 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:

    Cambiar o tamaño do tipo de letra e o aliñamento dunha etiqueta.

  6. Mova a galería ao bordo esquerdo da pantalla e diminúa a largura da galería para pechar algún espazo.

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

    Mover e redimensionar a galería.

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