Crear unha aplicación mediante os controis Address input e Map
Hai moitos escenarios nos que se espera que os usuarios introduzan enderezos nunha aplicación. Históricamente, houbo varios campos que capturan cada elemento dun enderezo onde o usuario proporciona o enderezo, a cidade e o código postal, e selecciona o estado. Introducir enderezos pode ser frustrante e provocar erros, especialmente en escenarios móbiles.
O control de entrada de enderezos presenta ao usuario suxestións de enderezos dinámicos mentres escribe. Usando unha lóxica de coincidencia difusa, o control suxire varias coincidencias de enderezos potenciais das que o usuario pode seleccionar— facendo máis rápido e sinxelo introducir enderezos precisos.
O control devolve o enderezo como datos estruturados, o que permite á aplicación extraer información como cidade, rúa, municipio e mesmo latitude e lonxitude. Os datos están nun formato axeitado para moitas configuracións rexionais e formatos de enderezos internacionais.
Para usar o control, cómpre activar Servizos Xeoespaciais para o medio ambiente.
Mira este vídeo para aprender a usar o control de entrada de enderezos:
Mira este vídeo para aprender a usar o control do mapa:
Neste artigo, aprenderemos a usar o control de entrada de enderezos nas aplicacións de lenzo.
Requisitos previos
Para completar esta lección, necesitarás un Power Apps ambiente con a Microsoft Dataverse base de datos. Se non tes licenza, podes rexistrarte para o Power Apps Plan de Desenvolvedor ou use a Power Apps xuízo.
Crear un ambiente de proba
Un ambiente en Power Apps é un espazo para almacenar, xestionar e compartir datos de empresa, aplicacións, bots de chat e fluxos da súa organización. Tamén serve como contedor para separar aplicacións que poidan ter diferentes funcións, requisitos de seguranza ou audiencias obxectivo.
Cada ambiente pode ter unha base de datos de Dataverse.
Para asegurarnos de que ten o que necesita para completar esta lección, imos crear un novo contorno que inclúa unha base de datos de Dataverse. Esta é unha proba de 30 días que desaparecerá ao final dos 30 días, pero pode actualizalo a un ambiente de produción ou de illamento de procesos se o quere conservar.
Imos crear un ambiente de proba que incluirá a Dataverse base de datos e os datos de mostra utilizados neste tema.
Ir a Power Platform centro de administración nun navegador web.
Seleccione Contornos.
Seleccione Nova.
Introduza un nome, por exemplo "Dataverse Xuízo".
Seleccione Xuízo para o tipo de ambiente.
Axuste Crear base de datos en Si.
Seleccione Seguinte.
Axuste Implementar aplicacións de mostra e datos en Si.
Seleccione Gardar.
Agora crearase o teu ambiente de proba, incluíndo a Dataverse base de datos e datos de mostra en Dataverse táboas.
Activar os Servizos Xeoespaciais para o medio ambiente
Antes de que poidamos usar os Servizos xeoespaciais en aplicacións de lenzo, un administrador debe habilitar o acceso ás funcións para o ambiente onde queremos crear a aplicación.
Para saber como activar Servizos xeoespaciais no teu entorno, mira Activa as características xeoespaciais para o medio ambiente.
Crea unha aplicación de lenzo
Comezaremos coa creación dunha aplicación e, a continuación, crearemos un control de cabeceira para usar dentro da aplicación para estandarizar o aspecto da cabeceira en diferentes pantallas.
Crear un aplicación de lenzo en branco no ambiente que creaches antes.
Seleccione Inserir > Nova pantalla > Desprazable para engadir unha nova pantalla.
Cambia o texto da etiqueta a "Nova conta".

Seleccione Inserir > Formularios > Editar para engadir un formulario á pantalla.

Engádese o control do formulario

Actualiza as seguintes propiedades do formulario:
Propiedade Valor Orixe de datos Contas Columnas 2 Modo predeterminado FormMode.NewSeleccione Editar xunto aos campos para engadir máis campos ao formulario e seleccione os seguintes campos de enderezo:
- Enderezo 1: Rúa 1
- Enderezo 1: cidade
- Enderezo 1: Estado
- Enderezo 1: código postal
- Enderezo 1: País/Rexión
- Enderezo 1: Latitude
- Enderezo 1: Lonxitude

Axuste a orde dos campos como se mostra a continuación.

Control de entrada de enderezos
Nesta sección, engadiremos o Entrada de enderezo control para a aplicación.
Seleccione Inserir > Entrada > Entrada de enderezo para engadir o control á pantalla.

Move o control cara á parte superior dereita da pantalla.

Configure as propiedades para o control de entrada de enderezo
Nesta sección, revisaremos e, se é necesario, estableceremos varias propiedades do control de enderezos. Hai uns cantos Entrada de enderezo propiedades específicas de control.

| Propiedade | Descripción |
|---|---|
| Límite de resultados da busca | O número de enderezos suxeridos que mostra o control. Fixémolo como 5 neste exemplo, polo que non aparecerán máis de cinco enderezos na busca. |
| Buscar dentro do radio | Se o control debe suxerir enderezos dentro do definido polo usuario Raio da Latitude e Lonxitude. Fixémolo para Si neste exemplo. |
| Latitude | A latitude do punto central empregada para xeodiferenciar suxestións de enderezos. Require que Buscar dentro do radio estea activado. Fixémolo na fórmulaLocation.Latitude neste exemplo para devolver a latitude da localización actual. |
| Lonxitude | A lonxitude do punto central empregada para xeodiferenciar suxestións de enderezos. Require que Buscar dentro do radio estea activado. Fixémolo na fórmulaLocation.Longitude neste exemplo para devolver a latitude da localización actual. |
| Radio | O radio, en metros, arredor da Latitude e Lonxitude para restrinxir as suxestións de enderezo. Requírese Busca dentro dun radio ser Activado. Fixémolo en 100000 neste exemplo. |
| Linguaxe | O idioma no que se devolven as suxestións de enderezos. Deixámolo co predeterminado: "Inglés (Estados Unidos)". |
| Conxunto de países | Lista de países separados por comas que limitan as suxestións de enderezos nos códigos de país ISO 3166 alpha-2. Exemplos: "US", "FR", "KW". Témolo como EU neste exemplo. |
Configure as propiedades de saída para o control de entrada de enderezo
O control mostra varias propiedades cando un usuario interactúa con el dentro dunha aplicación. Podes usar estas saídas noutros controis ou para personalizar a experiencia.
A táboa seguinte mostra as propiedades de saída dispoñibles.
| Propiedade | Descripción |
|---|---|
| Entrada do usuario | Texto que o usuario escribiu na caixa de entrada. |
| SelectedLatitude | Latitude do enderezo seleccionado polo usuario no campo de entrada. |
| SelectedLongitude | Lonxitude do enderezo seleccionado polo usuario no campo de entrada. |
| SearchResultJson | O resultado da busca (en función da propiedade UserInput), aparece como unha cadea no formato JSON. |
| FreeformAddress | Enderezo seleccionado da lista de enderezos suxeridos. |
| LocalName | Un control de enderezos que representa o nome dunha área xeográfica ou localidade que agrupa varios obxectos direccionables con fins de direccionamento, sen ser unha unidade administrativa. |
| PostalCode | Código postal. |
| ExtendedPostalCode | Código postal estendido. |
| CountryCode | Código do país. |
| País | País. |
| CountryCodeISO3 | Código de país en formato ISO alfa-3. |
| CountrySubdivisionName | Nome da subdivisión por país. |
| StreetName | Nome da rúa. |
| StreetNumber | Número da rúa. |
| Municipio | Municipio. |
| MunicipalitySubdivision | Subdivisión do municipio. |
| CountryTertiarySubdivision | Subdivisión terciaria por país. |
| CountrySecondarySubdivision | Subdivisión secundaria por país. |
| CountrySubdivision | Subdivisión por país. |
Cando executas a aplicación e comezas a escribir un enderezo, mostrará os enderezos que coincidan co valor introducido e que só se atopen a 100.000 metros da localización actual. Ademais, teña en conta que non mostra máis de cinco suxestións de enderezos ao mesmo tempo cando comeza a escribir o enderezo.

Usando o control anterior, capturaremos o enderezo nos campos de enderezos do formulario para crear unha nova conta. Este paso é útil para que o usuario non teña que escribir cada un dos elementos de enderezo individualmente.
Estableceremos os valores da tarxeta de datos co valor da propiedade apropiado a partir da entrada do enderezo.
Suxestión
É posible que os valores predeterminados da tarxeta de datos estean bloqueados. Para desbloquealos, selecciona a tarxeta de datos e vai á páxina Propiedades avanzadas e, a continuación, seleccione Desbloquear para cambiar as propiedades.

| Tarxeta de datos | Valor |
|---|---|
| Enderezo 1: Rúa 1 | AddressInput1.StreetNumber & " " & AddressInput1.StreetName |
| Enderezo 1: cidade | AddressInput1.Municipality |
| Enderezo 1: Provincia/Estado | AddressInput1.CountrySubdivision |
| Enderezo 1: código postal | AddressInput1.PostalCode |
| Enderezo 1: tarxeta de datos do país/rexión | AddressInput1.Country |
| Enderezo 1: Latitude | AddressInput1.SelectedLatitude |
| Enderezo 1: Lonxitude | AddressInput1.SelectedLongitude |
Exemplo para Enderezo 1: Rúa 1 tarxeta de datos:

O formulario enchégase con todos os campos de enderezo cando se selecciona un enderezo no Entrada de enderezo control.

Control de mapas
Nesta sección, veremos como engadir o Mapa control na aplicación para mostrar a localización seleccionada no mapa.
Antes de engadir o Mapa control, necesitamos crear unha colección para capturar o enderezo desde a entrada do enderezo; esta colección empregarase como orixe de datos para o mapa.
No OnAddressSelect propiedade do Entrada de enderezo control, introduza a seguinte fórmula para crear unha colección que capture os datos do enderezo.
ClearCollect( colSelectedAddress, { Street: AddressInput1.StreetNumber & " " & AddressInput1.StreetName, City: AddressInput1.Municipality, State: AddressInput1.CountrySubdivision, Zip: AddressInput1.PostalCode, Country: AddressInput1.Country, Latitude: AddressInput1.SelectedLatitude, Longitude: AddressInput1.SelectedLongitude } )
Seleccione unha zona fóra da Entrada de enderezo controlar e seleccionar Inserir > Medios > Mapa para engadir o control do mapa á pantalla.

Seleccione a colección como orixe de datos.

Move o mapa debaixo da sección de entrada de enderezos.

Configure as propiedades para o control Mapa
Nesta sección, revisaremos e, se é necesario, estableceremos varias propiedades do control do mapa.
A seguinte táboa enumera as propiedades dispoñibles.
| Propiedade | Descripción |
|---|---|
| Orixe de datos (elementos) | Orixe de datos (táboa) que enumera un conxunto predefinido de lonxitudes e latitudes que se amosarán como pin de mapa no mapa cando se carga. Asigne cada unha das columnas dos seus datos mediante ItemAddresses, ItemLongitudes, ItemLatitudes e ItemLabels. |
| Usar localización predefinida | Se o mapa se inicia nunha situación predeterminada establecida polo usuario. |
| Lonxitude predefinida | Lonxitude á que iría o mapa cando se cargue se Usar a situación predeterminada está activado. |
| Latitude predefinida | Latitude á que iría o mapa cando se cargue se Usar a situación predeterminada está activado. |
| Nivel de zoom predefinido | Nivel de zoom no que se establecería o mapa cando se cargue se Usar a situación predeterminada está activado. |
| Mostrar localización actual | Indica se o mapa debe amosar a situación actual do usuario. |
| Latitude da localización actual | A latitude da situación actual do usuario se Mostrar a situación actual está activado. |
| Lonxitude da localización actual | A lonxitude da situación actual do usuario se Mostrar a situación actual está activado. |
| Visualización de satélite | Se o estilo do mapa é unha vista por satélite ou unha vista de estrada. |
| Marcadores de clúster | Se os pins do mapa están agrupados. |
| Control de zoom | Indica se o control do zoom aparece no mapa. |
| Control de límites | Indica se o control do compás aparece no mapa. |
| Control de distancia | Indica se o control de ton aparece no mapa. |
| Cor do marcador | A cor dos pins. |
| ItemsLabels | Unha columna de Elementos coas cadeas que desexa usar como etiquetas dos pins. |
| ItemsAddresses | Columna de Elementos coas cadeas que representan a localización dos pins. |
| ItemsLongitudes | Nome da columna da táboa do súa orixe de datos con números de punto flotante que representan a posición da lonxitude dos pins. |
| ItemsLatitudes | Nome da columna da táboa do súa orixe de datos con números de punto flotante que representan a posición da latitude dos pins. |
| ItemsColors | Cor dos pinos. |
| ItemsIcons | Icona dos pinos. |
| Elementos | Nome da táboa na súa orixe de datos que contén todos os rexistros que desexa trazar no mapa usando pins. Cada fila debe ter unha entrada para a etiqueta, lonxitude e latitude para cada fila. |
| OnMapClick | Como responde o mapa cando se selecciona calquera localización. |
| OnSelect | Como responde a aplicación cando se selecciona un marcador no mapa. |
| OnLoad | Como responde a aplicación cando o mapa acaba de cargarse. |
| OnItemsChange | Como responde a aplicación cando se modifican os marcadores do mapa. |
| Mostrar cartóns de información | Indica se as tarxetas informativas aparecen nos alfinetes do mapa. |
| Mostrar formas | Se as formas dentro de Formas_Elementos aparecen no mapa. |
| Mostrar etiquetas de formas | Se as etiquetas aparecen nas formas do mapa. |
| Activar debuxo de formas | Indica se o control das ferramentas de debuxo aparece no mapa. |
| Activar a eliminación de formas e a edición de etiquetas | Indica se se poden eliminar as formas e editar as súas etiquetas no mapa. |
| Formas_Elementos | Nome da táboa do teu orixe de datos que contén todos os rexistros cos obxectos GeoJSON que queres mostrar no mapa como formas. |
| ShapeGeoJSONObjects | Nome da columna da táboa da súa orixe de datos con cadeas que representan os obxectos GeoJSON das formas. |
| ShapeLabels | Unha columna dentro Formas_Elementos coas cadeas que quere usar como etiquetas para as formas. |
| ShapeColors | Cor das formas. |
| OnShapeSelected | Como responde a aplicación cando se selecciona unha forma no mapa. |
| OnShapeCreated | Como responde a aplicación cando se crea unha forma no mapa. |
| OnShapeEdited | Como responde a aplicación cando se edita unha forma do mapa. |
| OnShapeDeleted | Como responde a aplicación cando se elimina unha forma do mapa. |
Configure as propiedades de saída para o control Mapa
O control Mapa mostra varias propiedades cando un usuario interactúa con el dentro dunha aplicación. Podes usar estas saídas noutros controis ou para personalizar a experiencia.
A táboa seguinte mostra as propiedades de saída dispoñibles.
| Propiedade | Descripción |
|---|---|
| CenterLocation | Centrar localización do mapa como .Latitude ou .Longitude. A saída será un número enteiro. Por exemplo, chamandoMap1.CenterLocation.Latitude sairá un único enteiro como "47.60357". |
| Seleccionadas | O marcador seleccionado no mapa. |
| SelectedItems | O marcador ou marcadores seleccionados do clúster seleccionado no mapa. |
| GeocodedItems | As localizacións xeocodificadas dos pinos no mapa. |
| ClickedLocation | A última localización premida do mapa como .Latitude ou .Longitude. |
| Shapes_Selected | O rexistro da forma seleccionada desde Shapes_Items. |
| Shapes_SelectedItems | Os rexistros das formas superpostas seleccionadas desde Shapes_Items. |
| SelectedShape | A forma seleccionada no mapa con .Perimeter e .Area. |
| DeletedShape | A última forma eliminada do mapa con.Perimeter e .Area. |
| GeoJSON | A lista de formas do mapa en formato GeoJSON de colección de funcionalidades. |
Para soltar un alfinete no enderezo introducido na entrada do enderezo, usaremos a colección que creamos no OnAddressSelect propiedade e utilízao no control do mapa.
| Propiedade | Valor |
|---|---|
| Elementos | colSelectedAddress |
| ItemsLatitudes | colSelectedAddress.Latitude |
| ElementosLonxitude | colSelectedAddress.Longitude |

A continuación explícanse algunhas das propiedades do alfinete que se poden personalizar por alfinete de localización:
Elementos Cores - Para actualizar a cor do alfinete a unha cor diferente para cada localización, engade unha columna á colección Cor: Vermello, e utilízao no Elementos Cores propiedade de datos do Mapa control.
ElementosEtiquetas - Para actualizar a etiqueta do PIN a unha etiqueta diferente que mostre o enderezo de cada localización, engade unha columna á colección Etiqueta:AddressInput1.FreeformAddress, e utilízao no ElementosEtiquetas propiedade de datos do Mapa control.
ElementosIconas - Para cambiar a icona do PIN para cada localización, engade unha columna á colección e utilízaa no ElementosIconas propiedade de datos do Mapa control. Neste exemplo, engadiremos unha icona triangular coa fórmula como
Icon: triangle.Suxestión
Para ver a lista completa de iconas, vai a Lista de modelos de imaxes.
ClearCollect( colSelectedAddress, { Street: AddressInput1.StreetNumber & " " & AddressInput1.StreetName, City: AddressInput1.Municipality, State: AddressInput1.CountrySubdivision, Zip: AddressInput1.PostalCode, Country: AddressInput1.Country, Latitude: AddressInput1.SelectedLatitude, Longitude: AddressInput1.SelectedLongitude, Label: AddressInput1.FreeformAddress, Color: Red, Icon: Triangle } );
Despois de engadir estes á colección, vai a Avanzado ficha da Mapa controlar e actualizar o Elementos Cores, e ElementosIconas propiedades.

Executa a aplicación no modo de vista previa para probar. O mapa mostra a localización seleccionada na entrada de enderezo cunha icona de triángulo e o enderezo aparece como unha etiqueta no mapa.

Consulte tamén
Comentarios
Enviar e ver os comentarios