Skapa en app med kontrollerna Adressinmatning och Mappning

Det finns många scenarier där användare förväntas ange adresser i en app. Tidigare har det funnits flera fält som samlar in elementen i en adress där användaren anger gatuadress, ort och postnummer, och där han eller hon väljer läge. Att ange adresser kan vara frustrerande och fel känsliga, särskilt i scenarier med olika situationer.

Adressinmatning kontrollen ger användaren förslag på dynamiska adresser när de skriver. Med hjälp av matchningslogik föreslår kontrollen flera adressmatcher som användaren kan välja mellan, vilket gör det snabbare —och enklare att ange korrekta adresser.

Kontrollen returnerar adressen som strukturerad data, vilket gör att appen kan extrahera information som stad, gata, kommun och till och med latitud och longitud. Informationen är i ett format som är läsvänlig för många språk och internationella adressformat.

För att kunna använda kontrollen måste du aktivera Geospatiala tjänster för miljön.

  • Titta på det här videoklippet och lär dig hur du använder Adressinmatning kontrollen:

  • Titta på det här videoklippet och lär dig hur du använder kontrollen Mappning:

I den här artikeln lär du dig hur du använder Adressinmatning kontrollen i arbetsyteappar.

Förutsättningar

För att kunna slutföra den här lektionen behöver du en Power Apps-miljö med en Microsoft Dataverse-databas. Om du inte har en licens kan du registrera dig för Power Apps Utvecklarplan eller använda en Power Apps utvärdering.

Skapa en utvärderingsmiljö

En miljö i Power Apps är ett utrymme för att lagra, hantera och dela din organisations affärsdata, appar, chattrobotar och flöden. Den fungerar också som en behållare för olika appar som kan ha olika roller, säkerhetskrav eller målgrupper.

Varje miljö kan ha en Dataverse databas.

För att säkerställa att du har det du behöver för att kunna genomföra den här lektionen skapar vi en ny miljö som innehåller en Dataverse databas. Det här är en 30-dagars utvärderingsversion som kommer att försvinna i slutet av de 30 dagarna, men du kan uppgradera den till en miljö i begränsat läge eller en produktionsmiljö om du vill behålla den.

Vi ska skapa en utvärderingsmiljö som innehåller en Dataverse databas och de exempeldata som används i ämne.

  1. Gå till Power Platform administrationscenter i en webbläsare.

  2. Välj Miljöer.

  3. Välj Nytt.

  4. Ange ett namn, till exempel Dataverse utvärdering.

  5. Välj utvärdering för miljötyp.

  6. Växla skapa databas till Ja.

  7. Välj Nästa.

    Skapa en utvärderingsmiljö.

  8. Växla Distribuera exempelappar och data till Ja.

  9. Välj Spara.

Din utvärderingsmiljö kommer nu att skapas, inklusive en Dataverse databas och exempeldata i Dataverse tabeller.

Aktivera Geospatiala tjänster för miljön

Innan vi kan använda Geospatiala tjänster i arbetsyteappar måste administratören ge åtkomst till funktionerna för den miljö där appen ska skapas.

Mer information om hur du aktiverar Geospatiala tjänster i miljön finns i Aktivera geospatiala funktioner för miljön.

Skapa en arbetsyteapp

Vi börjar med att skapa en app och skapar sedan en sidhuvudkkontroll som ska användas i appen för att standardisera utseendet och känslan i sidhuvudet på olika skärmar.

  1. Skapa en tom arbetsyteapp i den miljö du skapat tidigare.

  2. Välj Infoga > Ny skärm > Rullningsbar om du vill lägga en ny skärm.

    Välj bläddringsbar.

  3. Ändra etiketttexten till Nytt konto.

    Header

  4. Välj Infoga > Formulär > Redigera om du vill lägga till ett formulär på skärmen.

    Välj Redigera

    Kontrollen Form läggs till

    Kontrollen Form läggs till

  5. Uppdatera följande egenskaper för formuläret:

    Egenskap Value
    Data source Accounts
    Columns 2
    DefaultMode FormMode.New
  6. Välj Redigera bredvid fält om du vill lägga till fler fält i formuläret och välj följande adressfält:

    • Adress 1: Gatuadress 1
    • Adress 1: Ort
    • Adress 1: delstat
    • Adress 1: Postnummer
    • Adress 1: Land/region
    • Adress 1: Latitud
    • Adress 1: Longitud

    Adressegenskaper

  7. Ändra ordningen på fälten enligt vad som visas nedan.

    Kontonamn och huvudtelefon på första raden, adress 1: gata 1 och adress 1: stad på andra raden, adress 1: region och adress 1: postnummer på tredje raden, adress 1: land/region och adress 1 : Latitud på fjärde raden, Adress 1: Longitud på femte raden.

Kontroll för Adressinmatning

I det här avsnittet lägger vi till kontrollen Adressinmatning i appen.

  1. Välj Infoga > Indata > Adressinmatning för att lägga till kontrollen på skärmen.

    Välj kontroll för Adressinmatning

  2. Flytta kontrollen längst upp till höger på skärmen.

    Rutan Address Input läggs till

Konfigurera egenskaper för kontroll för Adressinmatning

I det här avsnittet granskar vi och anger olika egenskaper för adresskontrollen om det behövs. Det finns några kontrollspecifika egenskaper för Adressinmatning.

Kontroller för Adressinmatning

Egenskap Beskrivning
Sökresultatsgräns Antalet föreslagna adresser som kontrollen visas. Vi anger 5 i det här exemplet så inte fler än fem adresser visas vid sökning.
Sök inom radie Om kontrollen ska föreslå adresser inom den användardefinierade Radie för Latitud och Longitud. Vi anger det som Ja i det här exemplet.
Latitud Latitud för mittpunkten som används för förslag på geo-bias-adresser. Kräver att Söka inom radien aktiveras. Vi anger formeln Location.Latitude i det här exemplet så att den aktuella platsen returneras.
Longitud Longitud för mittpunkten som används för förslag på geo-bias-adresser. Kräver att Söka inom radien aktiveras. Vi anger formeln Location.Longitude i det här exemplet så att den aktuella platsen returneras.
Radie Radien, i meter kring latitud och longitud för att begränsa adressförslagen. Kräver att Söka inom radien anges till . Vi anger det som 100 000 i det här exemplet.
Språk Det språk som adressförslagen returneras på. Vi har lagt till standardinställningen "Engelska (USA)".
Landsuppsättning Kommaavgränsad lista med länder/regioner om du vill begränsa adressförslagen till i ISO 3166 alfa-2 landskoder. Exempel: "US", "FR", "SNR". Vi anger det som US i det här exemplet.

Konfigurera utdataegenskaper för kontroll för Adressinmatning

Kontrollen matar ut olika egenskaper när en användare interagerar med den i en app. Du kan använda dessa utdata i andra kontroller eller för att anpassa upplevelsen.

Följande tabell visar de olika utdataegenskaperna.

Egenskap Beskrivning
UserInput Text som användaren har skrivit i inmatningsrutan.
SelectedLatitude Latitud för den adress som användaren valde i inmatningsfältet.
SelectedLongitude Longitud för den adress som användaren valde i inmatningsfältet.
SearchResultJson Sökresultatet (baserat på egenskapen för UserInput) visas som en sträng i JSON-format.
FreeformAddress Vald adress i listan över föreslagna adresser.
LocalName En adresskontroll som representerar namnet på ett geografiskt område eller en plats där flera adresserbara objekt grupperas för adressering, utan att vara en administrativ enhet.
PostalCode Postnummer.
ExtendedPostalCode Utökat postnummer.
CountryCode Landsnummer.
Land/region Land/region.
CountryCodeISO3 Landskod i ISO-alfa-3-format.
CountrySubdivisionName Namn på landsindelning.
StreetName Gatunamn.
StreetNumber Gatunummer.
Kommun Kommun.
MunicipalitySubdivision Kommunindelning.
CountryTertiarySubdivision Tertiär landsindelning.
CountrySecondarySubdivision Sekundär landsindelning.
CountrySubdivision Landsindelning.

När du kör appen och börjar skriva en adress visas adresser som matchar det angivna värdet och som endast finns inom 100 000 meter från den aktuella platsen. Observera också att det inte visas fler än fem adressförslag samtidigt när du börjar skriva in adressen.

Adresspost

Med kontrollen ovan samlar vi in adressen i formulärets adressfält för att skapa ett nytt konto. Det här steget är användbart så att användaren inte behöver skriva in adresselementen var för sig.

Datakortsvärdena anges till rätt egenskapsvärde från Address Input.

Dricks

Standardvärdena för datakort kan vara låsta. Om du vill låsa upp dem väljer du datakort och går till Avancerade egenskaper och väljer sedan Lås upp om du vill ändra egenskaper.

Lås upp kontrollen

Datakort Värde
Adress 1: Gatuadress 1 AddressInput1.StreetNumber & " " & AddressInput1.StreetName
Adress 1: Ort AddressInput1.Municipality
Adress 1: Region AddressInput1.CountrySubdivision
Adress 1: Postnummer AddressInput1.PostalCode
Adress 1: Land/Region datakort AddressInput1.Country
Adress 1: Latitud AddressInput1.SelectedLatitude
Adress 1: Longitud AddressInput1.SelectedLongitude

Exempel för Adress 1: Gata 1 datakort:

Adressformel

Formuläret fylls i med alla adressfält när en adress väljs i kontrollen Adressinmatning.

Slutgiltigt formulär

kontrollen Mappning

I det här avsnittet ser vi hur du lägger till kontrollen Mappning i appen så att den valda platsen visas på kartan.

  1. Innan du lägger till kontrollen Mappning måste vi skapa en samling som visar adressen från Adressinmatning. Samlingen används som datakälla för kartan.

    På egenskapen OnAddressSelect för kontrollen Adressinmatning anger du följande formel för att skapa en samling som samlar in adressdata.

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

    Formel kontroll Mappning

  2. Välj ett område utanför kontrollen Adressinmatning och välj Insert > Media > Mappning för att lägga till kontrollen Mappning på skärmen.

    Välj karta

  3. Välj samlingen som datakälla.

    Välj kontrollen

  4. Flytta kartan nedanför avsnittet Address Input.

    Placera kartan på skärmen

Konfigurera egenskaper för kontrollen Mappning

I det här avsnittet granskar vi och anger olika egenskaper för kontrollen Mappning om det behövs.

Följande tabell visar de olika egenskaperna som är tillgängliga.

Egenskap Beskrivning
Datakälla (objekt) Datakälla (tabell) som listar en fördefinierad mängd longitud och latitude som ska visas som kartstift i kartan när den läses in. Mappa varje kolumn i dina data med hjälp av ItemAddresses, ItemLongitudes, ItemLatitudes och ItemLabels.
Använd standardplats Om kartan ska initieras på en standardplats som anges av användaren.
Standardlongitud Longitud som kartan skickas till om Använd standardplats är aktiverad.
Standardlatitud Latitud som kartan skickas till om Använd standardplats är aktiverad.
Standardvärde för zoomnivå Zoomnivå som kartan anges till om Använd standardplats är aktiverad.
Visa aktuell plats Om kartan ska visa användarens aktuella plats.
Den aktuella platsens latitud Indata till användarens aktuella plats om Visa aktuell plats har aktiverats.
Den aktuella platsens longitud Longituden till användarens aktuella plats om Visa aktuell plats har aktiverats.
Satellitvy Om kartans stil är en satellitvy eller en vägvy.
Klusterkartnålar Om kartstiften är grupperade.
Zoom kontroll Om kontrollen Zoom ska visas på kartan.
Kontrollen Compass Om kontrollen Compass ska visas på kartan.
Kontrollen Pitch Om kontrollen Pitch ska visas på kartan.
Färg på kartnål Stiftets färg.
ItemsLabels En kolumn i objekt med de strängar du vill använda som etiketter för stiften.
ItemsAddresses En kolumn i objekt med de strängar som representerar platsen för stiften.
ItemsLongitudes Namnet på kolumnen i tabellen i datakälla med flytpunktsnummer som representerar stiftets longitudposition.
ItemsLatitudes Namnet på kolumnen i tabellen i datakälla med flytpunktsnummer som representerar stiftets latitudposition.
ItemsColors Nålarnas färg.
ItemsIcons Nålarnas ikon.
Items Namnet på tabellen i ditt datakälla som innehåller alla poster du vill rita i kartan med hjälp av stift. Varje rad måste ha en post för etiketten, longituden och latitud för varje rad.
OnMapClick Hur kartan reagerar när en plats väljs.
OnSelect Hur appen reagerar när en form på kartnål har valts.
OnLoad Hur appen reagerar när kartan har lästs in.
OnItemsChange Hur appen svarar när kartnålarna ändras.
Show info cards Om informationskorten ska visas på kartnålarna.
Visa former Om formerna i Shapes_Items visas på kartan.
Visa formetiketter Huruvida etiketterna visas på kartans former.
Möjliggör formritning Om kontrollen Drawing Tools ska visas på kartan.
Möjliggör borttagning av former och redigering av etiketter Huruvida former kan tas bort och etiketterna kan redigeras på kartan.
Shapes_Items Namnet på tabellen i ditt datakälla som innehåller alla poster med GeoJSON-objekt du vill visa i kartan som former.
Formens GeoJSON-objekt Namnet på kolumnen i tabellen i din datakälla med strängar som representerar formerna GeoJSON i formerna.
Formens etiketter En kolumn Shapes_Items med de strängar du vill använda som etiketter för formerna.
Formens färger Formens färg.
OnShapeSelected Hur appen reagerar när en form på kartan väljs.
OnShapeCreated Hur appen reagerar när en form på kartan skapas.
OnShapeEdited Hur appen reagerar när en form på kartan redigeras.
OnShapeDeleted Hur appen reagerar när en form på kartan raderas.

Konfigurera utdataegenskaper för kontrollen Mappning

kontrollen Mappning matar ut olika egenskaper när en användare interagerar med den i en app. Du kan använda dessa utdata i andra kontroller eller för att anpassa upplevelsen.

Följande tabell visar de olika utdataegenskaperna.

Egenskap Beskrivning
CenterLocation Centrera platsen i kartan som antingen .Latitude eller .Longitude. Utdata kommer att vara ett heltal. Till exempel att ringa Map1.CenterLocation.Latitude kommer att mata ut ett heltal som "47,60357".
Har valts Den markerade kartnålen på kartan.
SelectedItems Den eller de markerade nålar i det markerade klustret på kartan.
GeocodedItems De geokodade platserna för kartnålarna.
ClickedLocation Senast klickad plats på kartan som antingen .Latitude eller .Longitude.
Shapes_Selected Posten för den markerade figuren från Shapes_Items.
Shapes_SelectedItems Posterna för de valda överlappande formerna från Shapes_Items.
SelectedShape Den markerade figuren på kartan med .Perimeter och .Area.
DeletedShape Den sista borttagna figuren på kartan med .Perimeter och .Area.
GeoJSON Listan över former på kartan i funktionssamling GeoJSON-format.

För att släppa en nål på adressen som angetts i Adressinmatning använder vi samlingen vi skapade på egenskapen OnAddressSelect och använder den i kontrollen Mappning.

Egenskap Värde
Artiklar colSelectedAddress
ItemsLatitudes colSelectedAddress.Latitude
ItemsLongitude colSelectedAddress.Longitude

Egenskaper för kontrollen Mappning

Några av kartnålens egenskaper kan anpassas per fästplats förklaras nedan:

  1. ItemsColors - Om du vill uppdatera färgen på kartnålen till en annan färg för varje plats lägger du till en kolumn i samlingen Färg: Röd, och använder den i dataegenskapen ItemsColors för kontrollen Mappning.

  2. ItemsLabels - Om du vill uppdatera etiketten på kartnålen till en annan etikett som visar adressen för varje plats lägger du till en kolumn i samlingen Etikett:AddressInput1.FreeformAddress och använder den i dataegenskapen ItemsLabels för kontrollen Mappning.

  3. ItemsIcons - För att ändra ikonen för kartnålen för varje plats, lägg till en kolumn i samlingen och använd den i dataegenskapen ItemsIcons i kontrollen Mappning. I det här exemplet lägger vi till en triangelikon med formeln som Icon: triangle.

    Dricks

    En fullständig lista med ikoner finns i Lista över bildmallar.

    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
        }
    );
    

När du har lagt till dessa i samlingen går du till fliken Avancerat i kontrollen Mappning och uppdaterar egenskaperna ItemsColors, ItemsLabels och ItemsIcons.

Avancerade egenskaper för kontrollen Mappning

Kör appen i förhandsgranskningsläge för att testa den. I kartan visas den valda platsen i Address Input med en triangelikon och adressen visas som en etikett på kartan.

Mappa uppdateringsadress för kontroll

Se även

Kontrollen Interactive Mappning