Sdílet prostřednictvím


Vytvoření aplikace s ovládacími prvky Zadání adresy a Mapa

Existuje mnoho scénářů, kdy se od uživatelů očekává, že zadají adresy do aplikace. V minulosti existovalo několik polí zachycujících každý prvek adresy, kde uživatel zadal adresu ulice, město a PSČ a vybral stát. Zadávání adres může být frustrující a náchylné k chybám, zejména v mobilních scénářích.

Ovládací prvek Zadání adresy předkládá uživateli návrhy dynamických adres během psaní. Pomocí logiky přibližné shody řídicí systém navrhuje několik potenciálních shod adres, ze kterých si uživatel může vybrat, což urychluje a usnadňuje zadávání přesných adres.

Ovládací prvek vrací adresu jako strukturovaná data, což umožňuje aplikaci extrahovat informace, jako je město, ulice, obec, a dokonce i zeměpisná šířka a délka. Data jsou ve formátu přehledném pro mnoho místních a mezinárodních formátů adres.

Chcete-li použít ovládací prvek, musíte povolit geoprostorové služby pro prostředí.

  • Podívejte se na toto video a zjistěte, jak ovládací prvek Zadání adresy:

  • Podívejte se na toto video a zjistěte, jak ovládací prvek Mapa:

V tomto článku se naučíme, jak používat ovládací prvek Zadání adresy v aplikacích plátna.

Předpoklady

K dokončení této lekce budete potřebovat prostředí Power Apps s databází Microsoft Dataverse. Pokud ještě nemáte licenci, můžete se zaregistrovat k plánu Power Apps pro vývojáře nebo použít zkušební verzi Power Apps.

Vytvoření zkušebního prostředí

Prostředí v Power Apps je místo k uložení, správě a sdílení obchodních dat, aplikacím chatbotů a toků vaší organizace. Slouží také jako kontejner pro oddělení aplikací, které mohou mít různé role, požadavky na zabezpečení nebo cílové publikum.

Každé prostředí může mít jednu databázi Dataverse.

Abyste se ujistili, že máte to, co potřebujete k dokončení této lekce, vytvoříme nové prostředí, které obsahuje databázi Dataverse. Toto je 30denní zkušební verze, která na konci 30 dnů skončí, ale pokud ji chcete zachovat, můžete ji upgradovat na sandbox nebo produkční prostředí.

Vytvoříme zkušební prostředí, které bude zahrnovat databázi Dataverse a ukázková data použitá v tomto tématu.

  1. Přejděte do centra pro správu Power Platform ve webovém prohlížeči.

  2. Vyberte Prostředí.

  3. Vyberte Nové.

  4. Zadejte název, např. „Zkouška Dataverse“.

  5. Jako typ prostředí vyberte Zkušební.

  6. Přepněte Vytvořit databázi na Ano.

  7. Vyberte Další.

    Vytvoření zkušebního prostředí.

  8. Přepněte Nasadit ukázkové aplikace a data na Ano.

  9. Vyberte Uložit.

Nyní bude vytvořeno vaše zkušební prostředí, včetně databáze Dataverse a ukázkových dat v tabulkách Dataverse.

Povolte geoprostorové služby pro prostředí

Než budeme moci používat geoprostorové služby v aplikacích plátna, musí správce povolit přístup k funkcím pro prostředí, kde chceme aplikaci vytvořit.

Chcete-li zjistit, jak povolit geoprostorové služby ve svém prostředí, viz Povolení geoprostorových funkcí pro prostředí.

Vytvoření aplikace plátna

Začneme vytvořením aplikace a poté vytvoříme ovládací prvek Header, který použijeme v aplikaci ke standardizaci vzhledu a chování záhlaví na různých obrazovkách.

  1. Vytvořte prázdnou aplikaci plátna v prostředí, které jste vytvořili dříve.

  2. Vyberte Vložit > Nová obrazovka > Posouvací pro přidání nové obrazovky.

    Vyberte rolovací.

  3. Změňte text popisku na „Nový účet“.

    Hlavička

  4. Vyberte Vložit > Formuláře > Upravit pro přidání formuláře na obrazovku.

    Vyberte Upravit

    Přidá se ovládací prvek Form

    Přidá se ovládací prvek Form

  5. Aktualizujte následující vlastnosti formuláře:

    Vlastnost Hodnota
    Zdroj dat Účty
    Columns 2
    DefaultMode FormMode.New
  6. Vyberte Upravit vedle polí, chcete-li do formuláře přidat další pole, a vyberte následující pole adresy:

    • Adresa 1: Ulice 1
    • Adresa 1: Město
    • Adresa 1: Stát
    • Adresa 1: PSČ
    • Adresa 1: Země/oblast
    • Adresa 1: Zeměpisná šířka
    • Adresa 1: Zeměpisná délka

    Vlastnosti Address

  7. Upravte pořadí polí, jak je uvedeno níže.

    Název účtu a hlavní telefon v prvním řádku, Adresa 1: Ulice 1 a Adresa 1: Město v druhém řádku, Adresa 1: Stát/provincie a adresa 1: PSČ ve třetím řádku, Adresa 1: Země/oblast a Adresa 1: Zeměpisná šířka ve čtvrtém řádku, Adresa 1: Zeměpisná délka v pátém řádku.

Ovládací prvek Zadání adresy

V této sekci přidáme ovládací prvek Zadání adresy do aplikace.

  1. Vyberte Vložit > Zadávání > Zadání adresy pro přidání ovládacího prvku na obrazovku.

    Vyberte ovládací prvek Zadání adresy

  2. Přesuňte ovládací prvek do horní pravé části obrazovky.

    Je přidáno pole pro zadávání adresy

Konfigurace vlastností pro ovládací prvek Zadání adresy

V této části si projdeme a v případě potřeby nastavíme různé vlastnosti ovládacího prvku adresy. Existuje několik vlastností Zadání adresy specifických pro ovládací prvek.

Ovládací prvky Zadání adresy

Vlastnost Popis
Limit výsledků hledání Počet navrhovaných adres, které ovládací prvek zobrazí. V tomto příkladu jsme ji nastavili na 5, takže při vyhledávání se nezobrazí více než pět adres.
Hledání v poloměru Zda má ovládací prvek navrhovat adresy v rámci uživatelem definovaného poloměru od zeměpisné šířky a zeměpisné délky. V tomto příkladu jsme to nastavili na Ano.
Zeměpisná šířka Zeměpisná šířka středového bodu, která se používá k návrhům adres s geo-zkreslením. Vyžaduje zapnutou volbu Hledat v okruhu. Nastavili jsme to podle vzorce Location.Latitude v tomto příkladu, aby se vrátila zeměpisná šířka aktuální polohy.
Zeměpisná délka Zeměpisná délka středového bodu, která se používá k návrhům adres s geo-zkreslením. Vyžaduje zapnutou volbu Hledat v okruhu. Nastavili jsme to podle vzorce Location.Longitude v tomto příkladu, aby se vrátila zeměpisná šířka aktuální polohy.
Poloměr Poloměr v metrech kolem Zeměpisná šířka a Zeměpisná délka pro omezení návrhů adres. Vyžaduje nastavenou volbu Hledat v okruhu na možnost Zapnuto. V tomto příkladu jsme to nastavili na 100 000.
Jazyk Jazyk, ve kterém jsou vráceny návrhy adres. Ponechali jsme výchozí nastavení – „Angličtina (Spojené státy)“.
Country set Seznam zemí/oblastí oddělených čárkami, které omezují návrhy adres, v kódech zemí ISO 3166 alfa-2. Příklady: "„US“, „FR“, „KW“. V tomto příkladu jsme to nastavili na US.

Konfigurace vlastností výstupu pro ovládací prvek Zadání adresy

Ovládací prvek zobrazuje různé vlastnosti, když s ním uživatel interaguje v aplikaci. Tyto výstupy můžete použít v jiných ovládacích prvcích nebo k přizpůsobení prostředí.

Následující tabulka obsahuje dostupné vlastnosti výstupu.

Vlastnost Popis
UserInput Text, který uživatel zadal do vstupního pole.
SelectedLatitude Zeměpisná šířka uživatelem vybrané adresy ve vstupním poli.
SelectedLongitude Zeměpisná délka uživatelem vybrané adresy ve vstupním poli.
SearchResultJson Výsledek hledání (založený na vlastnosti UserInput) zobrazený jako řetězec ve formátu JSON.
FreeformAddress Vybraná adresa ze seznamu navrhovaných adres.
LocalName Ovládací prvek Address představující název zeměpisné oblasti nebo lokality, která seskupuje několik adresovatelných objektů pro účely adresování, aniž by byla administrativní jednotkou.
PostalCode Poštovní směrovací číslo.
ExtendedPostalCode Rozšířené PSČ.
CountryCode Kód země.
Země/oblast Země.
CountryCodeISO3 Kód země ve formátu ISO alfa-3.
CountrySubdivisionName Název dílčího rozdělení země/oblasti.
StreetName Název ulice.
StreetNumber Číslo ulice.
Obec Obec.
MunicipalitySubdivision Dílčí rozdělení obce.
CountryTertiarySubdivision Terciární dílčí rozdělení zemí.
CountrySecondarySubdivision Sekundární dílčí rozdělení zemí.
CountrySubdivision Dílčí rozdělení země/oblasti.

Když aplikaci spustíte a začnete psát adresu, zobrazí se adresy, které odpovídají zadané hodnotě a nacházejí se pouze do 100 000 metrů od aktuální polohy. Všimněte si také, že nezobrazuje více než pět návrhů adres najednou, když začnete zadávat adresu.

Zadání adresy

Pomocí výše uvedeného ovládacího prvku zachytíme adresu do polí pro adresu formuláře, abychom vytvořili nový účet. Tento krok je užitečný, aby uživatel nemusel zadávat každý z prvků adresy samostatně.

Hodnoty datové karty nastavíme na příslušnou hodnotu vlastnosti ze vstupu adresy.

Tip

Výchozí hodnoty datové karty mohou být uzamčeny. Chcete-li je odemknout, vyberte datovou kartu a přejděte na Pokročilé vlastnosti a poté vyberte Odemknout ke změně vlastností.

Odemčení ovládacího prvku

Datová karta Hodnota
Adresa 1: Ulice 1 AddressInput1.StreetNumber & " " & AddressInput1.StreetName
Adresa 1: Město AddressInput1.Municipality
Adresa 1: Kraj AddressInput1.CountrySubdivision
Adresa 1: PSČ AddressInput1.PostalCode
Adresa 1: Datová karta země/oblasti AddressInput1.Country
Adresa 1: Zeměpisná šířka AddressInput1.SelectedLatitude
Adresa 1: Zeměpisná délka AddressInput1.SelectedLongitude

Příklad pro datovou kartu Adresa 1: Ulice 1:

Vzorec adresy

Formulář se vyplní všemi poli adresy, když je adresa vybrána v ovládacím prvku Zadání adresy.

Finální podoba

Ovládací prvek Mapa

V této části uvidíme, jak přidat ovládací prvek Mapa v aplikaci, aby se zobrazilo vybrané místo na mapě.

  1. Před přidáním ovládacího prvku Mapa musíme vytvořit kolekci pro zachycení adresy ze zadání adresy – tato kolekce bude použita jako zdroj dat pro mapu.

    Ve vlastnosti OnAddressSelect ovládacího prvku Zadání adresy zadejte následující vzorec a vytvořte kolekci, která zachycuje data adresy.

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

    Vzorec ovládacího prvku Mapa

  2. Vyberte oblast mimo ovládací prvek Zadání adresy a vyberte Vložit > Média > Mapa pro přidání ovládacího prvku mapy na obrazovku.

    Vyberte mapu

  3. Vyberte kolekci jako zdroj dat.

    Výběr ovládacího prvku

  4. Posuňte mapu pod část pro zadání adresy.

    Umístěte mapu na obrazovku

Nakonfigurujte vlastnosti pro ovládací prvek Mapa

V této části si projdeme a v případě potřeby nastavíme různé vlastnosti ovládacího prvku Mapa.

Následující tabulka znázorňuje dostupné vlastnosti.

Vlastnost Popis
Zdroj dat (položky) Zdroj dat (tabulka), která uvádí předdefinovanou sadu zeměpisných délek a šířek, které se po načtení zobrazí jako špendlík na mapě. Mapujte každý sloupec v datech pomocí ItemAddresses, ItemLongitudes, ItemLatitudes, a ItemLabels.
Použít výchozí polohu Zda se mapa inicializuje na výchozím místě nastaveném uživatelem.
Výchozí zeměpisná délka Zeměpisná délka, v níž by byla mapa načtena, pokud je povolena volba Použít výchozí umístění.
Výchozí zeměpisná šířka Zeměpisná šířka, v níž by byla mapa načtena, pokud je povolena volba Použít výchozí umístění.
Výchozí úroveň přiblížení Úroveň přiblížení, v níž by byla mapa načtena, pokud je povolena volba Použít výchozí umístění.
Zobrazit aktuální polohu Zda má mapa zobrazovat aktuální polohu uživatele.
Zeměpisná šířka aktuální polohy Zeměpisná šířka aktuální polohy uživatele, pokud je povoleno Zobrazit aktuální polohu.
Zeměpisná délka aktuální polohy Zeměpisná délka aktuální polohy uživatele, pokud je povoleno Zobrazit aktuální polohu.
Satelitní zobrazení Zda je styl mapy satelitní nebo silniční.
Kombinované špendlíky Zda jsou špendlíky na mapě seskupeny.
Ovládací prvek Zoom Zda se ovládací prvek Zoom zobrazí na mapě.
Ovládací prvek Compass Zda se ovládací prvek Compass zobrazí na mapě.
Ovládací prvek Pitch Zda se ovládací prvek Pitch zobrazí na mapě.
Barva špendlíku Barva špendlíků.
ItemsLabels Sloupec v položkách s řetězci, které chcete použít jako popisky u špendlíků.
ItemsAddresses Sloupec v položkách s řetězci, které představují umístění špendlíků.
ItemsLongitudes Název sloupce v tabulce ve zdroji dat s čísly s plovoucí desetinnou čárkou, která představují polohu zeměpisné délky špendlíků.
ItemsLatitudes Název sloupce v tabulce ve zdroji dat s čísly s plovoucí desetinnou čárkou, která představují polohu zeměpisné šířky špendlíků.
ItemsColors Barva připínáčků.
ItemsIcons Ikona připínáčků.
Položky Název tabulky ve zdroji dat, která obsahuje všechny záznamy, které chcete do mapy vykreslit pomocí špendlíků. Na každém řádku musí být záznam položku pro popisek, zeměpisnou délku a zeměpisnou šířku.
OnMapClick Způsob, jakým mapa reaguje na výběr libovolného umístění.
OnSelect Způsob, jakým aplikace reaguje na výběr připínáčku na mapě.
OnLoad Způsob, jakým aplikace reaguje na dokončení načítání mapy.
OnItemsChange Způsob, jakým aplikace reaguje na změny připínáčků na mapě.
Zobrazovat informační karty Zda se informační karty zobrazují na připínáčcích mapy.
Zobrazit tvary Zda se tvary uvnitř Shapes_Items zobrazí na mapě.
Zobrazit popisky tvarů Zda se popisky zobrazí na tvarech na mapě.
Povolit kreslení tvarů Zda se ovládací prvek Drawing Tools zobrazí na mapě.
Povolit odstranění tvarů a úpravu popisků Zda lze tvary smazat a jejich štítky upravit na mapě.
Shapes_Items Název tabulky ve vašem zdroji dat, který obsahuje všechny záznamy s objekty GeoJSON, které chcete zobrazit na mapě jako tvary.
ShapeGeoJSONObjects Název sloupce v tabulce ve vašem zdroji dat s řetězci, které představují objekty GeoJSON tvarů.
ShapeLabels Sloupec v Shapes_Items s řetězci, který chcete použít jako popisky pro tvary.
ShapeColors Barvy tvarů.
OnShapeSelected Způsob, jakým aplikace reaguje na výběr tvaru na mapě.
OnShapeCreated Způsob, jakým aplikace reaguje na vytvoření tvaru na mapě.
OnShapeEdited Způsob, jakým aplikace reaguje na úpravu tvaru na mapě.
OnShapeDeleted Způsob, jakým aplikace reaguje na odstranění tvaru na mapě.

Nakonfigurujte vlastnosti výstupu pro ovládací prvek Mapa

Ovládací prvek Mapa zobrazuje různé vlastnosti, když s ním uživatel interaguje v aplikaci. Tyto výstupy můžete použít v jiných ovládacích prvcích nebo k přizpůsobení prostředí.

Následující tabulka obsahuje dostupné vlastnosti výstupu.

Vlastnost Popis
CenterLocation Střed mapy jako .Latitude nebo .Longitude. Výstupem bude celé číslo. Například volání Map1.CenterLocation.Latitude vypíše jedno celé číslo, jako je „47,60357“.
Vybrané Vybraný špendlík na mapě.
SelectedItems Vybraný špendlík nebo špendlíky vybraného clusteru na mapě.
GeocodedItems Geokódovaná umístění špendlíků na mapě.
ClickedLocation Místo na mapě, na které bylo naposled kliknuto, jako .Latitude nebo .Longitude.
Shapes_Selected Záznam vybraného tvaru z Shapes_Items.
Shapes_SelectedItems Záznamy vybraných překrývajících se tvarů z Shapes_Items.
SelectedShape Vybraný tvar na mapě pomocí s .Perimeter a .Area.
DeletedShape Poslední smazaný tvar na mapě s .Perimeter a .Area.
GeoJSON Seznam tvarů na mapě ve formátu kolekce prvků GeoJSON.

Chcete-li připnout připínáček na adresu zadanou v zadání adresy, použijeme kolekci, kterou jsme vytvořili na vlastnosti OnAddressSelect, a použijeme ji v ovládacím prvku Mapa.

Vlastnost Hodnota
Položky colSelectedAddress
ItemsLatitudes colSelectedAddress.Latitude
ItemsLongitude colSelectedAddress.Longitude

Vlastnosti ovládacího prvku Mapa

Některé vlastnosti připínáčku lze přizpůsobit podle umístění připínáčku, jsou vysvětleny níže:

  1. ItemsColors – Chcete-li změnit barvu připínáčku na jinou barvu pro každé umístění, přidejte do kolekce sloupec Barva: Červená a použijte ji v datové vlastnosti ItemsColors ovládacího prvku Mapa.

  2. ItemsLabels – Chcete-li změnit popisek připínáčku na jiný popisek s adresou pro každé umístění, přidejte do kolekce sloupec Label:AddressInput1.FreeformAddress a použijte ji v datové vlastnosti ItemsLabels ovládacího prvku Mapa.

  3. ItemsIcons – Chcete-li změnit ikonu připínáčku pro každé umístění, přidejte do kolekce sloupec a použijte ho v datové vlastnosti ItemsIcons ovládacího prvku Mapa. V tomto příkladu přidáme ikonu trojúhelníku se vzorcem jako Icon: triangle.

    Tip

    Úplný seznam ikon naleznete na seznamu obrazových šablon.

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

Po přidání těchto položek do sbírky přejděte na kartu Pokročilé ovládacího prvku Mapa a aktualizujte vlastnosti ItemsColors, ItemsLabels a ItemsIcons.

Pokročilé vlastnosti ovládacího prvku Mapa

Spuštění aplikace v režimu náhledu k otestování. Mapa zobrazuje místo vybrané v prvku Zadání adresy pomocí ikony trojúhelníku a adresa se na mapě zobrazuje jako popisek.

Aktualizace adresy ovládacího prvku Mapa

Viz také

Ovládací prvek Interaktivní mapa