Бөлісу құралы:


Address input және Map басқару құралдары бар бағдарламаны жасау

Пайдаланушылардың бағдарламаға мекенжайларды енгізуі күтілетін көптеген сценарийлер бар. Тарихи тұрғыдан алғанда, мекенжайдың әр элементін тіркейтін бірнеше өрістер болған, онда пайдаланушы көше мекенжайын, қаланы және пошта индексін енгізіп, облысты таңдаған. Мекенжайларды енгізу, әсіресе мобильді сценарийлерде қолайсыз және қателік тудыруы мүмкін.

Мекенжай енгізу басқару элементі пайдаланушыға теру кезінде динамикалық мекенжай ұсыныстарын ұсынады. Басқару элементі ұқсас сәйкестендіру логикасының көмегімен пайдаланушы таңдай алатын—нақты мекенжайларды жылдам әрі оңай енгізуге мүмкіндік беретін ықтимал мекенжай сәйкестіктерін ұсынады.

Басқару элементі мекенжайды құрылымдалған деректер ретінде қайтарады, бұл бағдарламаға қала, көше, муниципалитет, тіпті ендік және бойлық сияқты ақпаратты шығаруға мүмкіндік береді. Деректер көптеген тілдерге және халықаралық мекенжай пішімдеріне қолайлы болып келетін пішімде берілген.

Басқару элементін пайдалану үшін, орта үшін геокеңістіктік қызметтерді қосу керек.

  • Мекнжай енгізу басқару элементін пайдалану жолын білу үшін мына бейнені қараңыз:

  • Карта басқару элементін пайдалану жолын білу үшін мына бейнені қараңыз:

Бұл мақалада кенеп бағдарламаларында мекенжай енгізу басқару элементін пайдалану жолын үйренеміз.

Алғышарттар

Бұл сабақты аяқтау үшін Microsoft Dataverse дерекқоры бар Power Apps ортасы қажет. Лицензияңыз болмаса, Power Apps әзірлеуші жоспарына жазылуыңызға немесе Power Apps сынақ нұсқасын пайдалануға болады.

Сынақ ортасын жасау

Power Apps бағдарламасындағы орта – бұл ұйымыңыздың іскерлік деректерін, бағдарламалары, чатботтары мен ағындарын сақтауға, басқаруға және бөлісуге арналған орын. Ол сондай-ақ әртүрлі рөлдері, қауіпсіздік талаптары немесе мақсатты аудиториялары болуы мүмкін бағдарламаларды бөлуге арналған контейнер ретінде қызмет етеді.

Әр ортада бір Dataverse дерекқоры болуы мүмкін.

Бұл сабақты орындау үшін сізге қажет нәрсенің бар екеніне көз жеткізу үшін біз Dataverse дерекқоры бар жаңа орта жасаймыз. Бұл 30 күндік сынақ нұсқасы болып табылады, ол 30 күннен кейін жойылады, бірақ егер сіз оны сақтағыңыз келсе, оны сынақ данасына немесе өндірістік ортаға жаңарта аласыз.

Біз Dataverse дерекқорын және осы тақырыпта пайдаланылатын іріктеме деректерін қамтитын сынақ ортасын жасаймыз.

  1. Веб-шолғышта Power Platform әкімші орталығына өтіңіз.

  2. Орталар параметрін таңдаңыз.

  3. Жаңа пәрменін таңдаңыз.

  4. Атауды енгізіңіз, мысалы, "Dataverse сынақ нұсқасы".

  5. Орта түрі үшін Сынақ нұсқа деген түрін таңдаңыз.

  6. Дерекқор жасау опциясын Иә күйіне ауыстырыңыз.

  7. Келесі пәрменін таңдаңыз.

    Сынақ ортасын жасаңыз.

  8. Үлгі бағдарламалар мен деректерді орналастыру параметрін Иә күйіне ауыстырыңыз.

  9. Сақтау пәрменін таңдаңыз.

Енді сіздің сынақ ортаңыз жасалады, оның ішінде Dataverse кестелерінде Dataverse дерекқоры мен іріктеме деректері болады.

Әр орта үшін геокеңістіктік қызметтерді қосу

Кенеп бағдарламаларында геокеңістіктік қызметтерді пайдалану алдында, әкімші бағдарламаны жасауымызға қажетті орта үшін мүмкіндіктерге кіруге мүмкіндік беруі керек.

Ортаңызда Геокеңістіктік қызметтер параметрін қосу жолын білу үшін Орта үшін геокеңістіктік мүмкіндіктерді қосу бөлімін қараңыз.

Кенеп бағдарламасын құру

Біз бағдарламаны құрудан бастаймыз, содан кейін әртүрлі экрандардағы тақырыптың көрінісін стандарттау үшін бағдарламада пайдалану үшін тақырыпты басқару элементін жасаймыз.

  1. Өзіңіз бұрын жасаған ортада бос кенеп бағдарламасын жасаңыз.

  2. Жаңа экран қосу үшін Кірістіру > Жаңа экран > Айналдыру тармағын таңдаңыз.

    Айналдырылатын элементті таңдаңыз.

  3. Белгі мәтінін "Жаңа тіркелгі" деп өзгертіңіз.

    Жоғарғы деректеме

  4. Экранға пішін қосу үшін Кірістіру > Пішіндер > Өңдеу тармағын таңдаңыз.

    Өңдеу түймешігін таңдау

    Пішін басқару элементі қосылады

    Пішін басқару элементі қосылады

  5. Пішіннің келесі сипаттарын жаңартыңыз:

    Сипат Value
    Дереккөз Тіркелгілер
    Бағандар 2-көше
    DefaultMode FormMode.New
  6. Пішінге қосымша өрістер қосу үшін өрістердің жанындағы Өңдеу пәрменін таңдап, келесі мекенжай өрістерін таңдаңыз:

    • 1-мекенжай: 1-көше
    • 1-мекен-жай: Қала
    • 1-мекенжай: облыс
    • 1-мекенжай: Zip/пошталық индекс
    • 1-мекенжай: ел/аймақ
    • 1-мекенжай: ендік
    • 1-мекенжай: бойлық

    Мекенжай сипаттары

  7. Өрістердің ретін төменде көрсетілгендей реттеңіз.

    Бірінші жолда тіркелгі атауы және негізгі телефон, 1-мекенжай: 1-көше және 1-мекенжай: екінші қатарда қала, 1-мекенжай: облыс/аудан және 1-мекенжай: үшінші қатарда пошта индексі, 1-мекенжай: ел/аймақ және 1-мекенжай: төртінші қатардағы ендік, 1-мекенжай: бесінші қатардағы бойлық.

Мекенжай енгізу басқару элементі

Бұл бөлімде бағдарламаға Мекенжай енгізу басқару элементін қосамыз.

  1. Экранға басқару элементін қосу үшін Кірістіру > Кіріс > Мекенжай енгізу тармағын таңдаңыз.

    Мекенжай енгізу басқару элементін таңдау

  2. Басқару элементін экранның жоғарғы оң жағына жылжытыңыз.

    Мекенжай енгізу өрісі қосылды

Мекенжай енгізу басқару элементінің сипаттарын конфигурациялау

Бұл бөлімде мекенжай басқару элементінің әртүрлі сипаттарын қарастырамыз және қажет болған жағдайда орнатамыз. Мекенжай енгізу басқару элементіне тән бірнеше сипат бар.

Мекенжай енгізу басқару элементтері

Сипат. Сипаттама
Іздеу нәтижелерінің шегі Ұсынылған мекенжайлардың саны басқару элементін көрсетеді. Бұл мысалда оны 5-ке орнаттық, сондықтан іздеу нәтижесінде бес мекенжайдан аспайды.
Радиус ішінде іздеу Басқару элементі мекенжайларды Ендікжәне Бойлық сипатының пайдаланушы анықтаған Радиус сипатында ұсынуы керек. Оны осы мысалда Иә етіп орнаттық.
Ендік Мекенжай ұсыныстарын гео-белдеуде пайдаланылатын орталық нүктенің ендігі. Радиуста іздеу сипаты болуы қажет. Ағымдағы орынның ендігін қайтару үшін оны осы мысалдағы Location.Latitude формуласына орнаттық.
Бойлық Мекенжай ұсыныстарын гео-белдеуде пайдаланылатын орталық нүктенің бойлығы. Радиуста іздеу сипаты болуы қажет. Ағымдағы орынның ендігін қайтару үшін оны осы мысалдағы Location.Longitude формуласына орнаттық.
Радиус Мекенжай ұсыныстарын шектеу үшін Ендік және Бойлық сипатының шамасында метрмен берілген радиус. Радиус бойынша іздеу параметрі Қосулы болуы қажет. Оны осы мысалда 100000 етіп орнаттық.
Тіл Мекенжай ұсыныстары қайтарылатын тіл. Оны әдепкі бойынша қалдырдық – "Ағылшын тілі (АҚШ)".
Елдер жинағы ISO 3166 альфа-2 ел кодтарында мекенжай ұсыныстарын шектейтін елдердің/аймақтардың үтірмен бөлінген тізімі. Мысалы: "US", "FR", "KW". Оны осы мысалда АҚШ етіп орнаттық.

Мекенжай енгізу басқару элементінің шығыс сипаттарын конфигурациялау

Басқару элементі пайдаланушы онымен бағдарлама ішінде өзара әрекеттескен кезде түрлі сипаттарды шығарады. Сіз бұл нәтижелерді басқа басқару элементтерінде немесе тәжірибені реттеу үшін пайдалана аласыз.

Келесі кестеде қолжетімді нәтиже сипаттары берілген.

Сипат Сипаттамасы
Пайдаланушы енгізуі Пайдаланушы енгізу жолағына терген мәтін.
Таңдалған ендік Енгізу өрісінде пайдаланушы таңдаған мекенжайдың ендігі.
Таңдалған бойлық Енгізу өрісінде пайдаланушы таңдаған мекенжайдың бойлығы.
SearchResultJson Іздеу нәтижесі (Пайдаланушының енгізу қасиетіне негізделген), JSON пішіміндегі жол түрінде көрсетіледі.
FreeformAddress Ұсынылған мекенжайлар тізімінен таңдалған мекенжай.
LocalName Мекенжай тағайындау мақсаттары үшін бірқатар мекенжай тағайындалатын нысандарды топтастыратын, бірақ әкімшілік бірлік болып табылмайтын географиялық аймақ немесе елді мекеннің атауы болып табылатын мекенжай басқару элементі.
PostalCode Пошта индексі.
ExtendedPostalCode Кеңейтілген пошта индексі.
CountryCode Ел коды.
Ел Ел.
CountryCodeISO3 ISO alpha-3 пішіміндегі ел коды.
CountrySubdivisionName Ел бөлімшесінің атауы.
StreetName Көше атауы.
StreetNumber Көше нөмірі.
Муниципалитет Муниципалитет.
MunicipalitySubdivision Муниципалитеттің бөлімшесі.
CountryTertiarySubdivision Елдің үшінші бөлімшесі.
CountrySecondarySubdivision Елдің екінші бөлімшесі.
CountrySubdivision Ел бөлімшесі.

Бағдарламаны іске қосып, мекенжайды тере бастағанда, ол енгізілген мәнге сәйкес келетін және ағымдағы орыннан тек 100000 метр қашықтықта орналасқан мекенжайларды көрсетеді. Сондай-ақ, мекенжайды тере бастаған кезде, оның бес мекенжай ұсынысынан артық көрсетпейтініне назар аударыңыз.

Мекенжай енгізу

Жоғарыдағы басқару элементін пайдаланып, жаңа тіркелгі жасау үшін пішіннің мекенжай өрістеріндегі мекенжайды түсіреміз. Бұл қадам пайдаланушыға мекенжай элементтерінің әрқайсысын жеке енгізудің қажеті болмас үшін пайдалы.

Деректер картасының мәндерін мекенжай кірісіндегі тиісті сипат мәніне орнатамыз.

Кеңес

Деректер картасының әдепкі мәндері құлыпталған болуы мүмкін. Олардың құлпын ашу үшін деректер картасын таңдап, Кеңейтілген сипаттар бөліміне өтіңіз, содан кейін Сипаттарды өзгерту үшін құлпын ашу опциясын таңдаңыз.

Басқару элементінің құлпын ашу

Деректер картасы Value
1-мекенжай: 1-көше AddressInput1.StreetNumber & " " & AddressInput1.StreetName
1-мекен-жай: Қала AddressInput1.Municipality
1-мекенжай: облыс/аудан AddressInput1.CountrySubdivision
1-мекенжай: Zip/пошталық индекс AddressInput1.PostalCode
1-мекенжай: ел/аймақ деректер картасы AddressInput1.Country
1-мекенжай: ендік AddressInput1.SelectedLatitude
1-мекенжай: бойлық AddressInput1.SelectedLongitude

1-мекенжай: 1-көше деректер картасына мысал:

Мекенжай формуласы

Мекенжай енгізу басқару элементінде мекенжай таңдалғанда, пішін барлық мекенжай өрістерімен толтырылады.

Қорытынды пішін

Карта басқару элементі

Бұл бөлімде таңдалған орынды картада көрсету үшін бағдарламаға Карта басқару элементін қосу жолын көреміз.

  1. Карта басқару элементін қоспас бұрын, мекенжай кірісіндегі мекенжайды түсіру үшін жиын жасауымыз керек – бұл жиын карта үшін деректер көзі ретінде пайдаланылады.

    Мекенжай енгізу басқару элементінің OnAddressSelect сипатында мекенжай деректерін түсіретін жиын жасау үшін келесі формуланы енгізіңіз.

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

    Карта басқару элементінің формуласы

  2. Мекенжай енгізу басқару элементінен тыс аймақты таңдап, карта басқару элементін экранға қосу үшін Кірістіру > Мультимедиа > Карта тармағын таңдаңыз.

    Картаны таңдау

  3. Жиынды деректер көзі ретінде таңдаңыз.

    Басқару элементін таңдау

  4. Картаны мекенжай енгізу бөлімінің астына жылжытыңыз.

    Картаны экранға орналастыру

Карта басқару элементі үшін сипаттарды конфигурациялау

Бұл бөлімде карта басқару элементінің әртүрлі сипаттарын қарастырамыз және қажет болған жағдайда орнатамыз.

Келесі кестеде қолжетімді сипаттар тізімі берілген.

Сипат. Сипаттама
Деректер көзі(элементтер) Картаны жүктелген кезде оны картаға бекіту ретінде көрсету үшін ендіктер мен бойлықтардың алдын ала анықталған жиынын көрсететін деректер көзі (кесте). Деректердегі бағандардың әрбірін ItemAddresses, ItemLongitudes, ItemLatitudes жәнеItemLabels сипатының көмегімен салыстырыңыз.
Әдепкі орынды пайдалану Карта пайдаланушы арқылы орнатылған әдепкі орынға баптандырылады.
Әдепкі бойлық Әдепкі орынды пайдалану сипаты қосылған жағдайда картаның жүктеу кезінде өтетін бойлығы.
Әдепкі ендік Әдепкі орынды пайдалану сипаты қосылған жағдайда картаның жүктеу кезінде өтетін ендігі.
Әдепкі ұлғайту деңгейі Әдепкі орынды пайдалану сипаты қосылған жағдайда картаның жүктеу кезінде орнатылатын масштабтау деңгейі.
Ағымдағы орынды көрсету Картада пайдаланушының ағымдағы орны көрсетілуі керек пе.
Ағымдағы орналасқан жердің ендігі Пайдаланушының ағымдағы орналасу ендігі, егер Ағымдағы орынды көрсету қосулы болса.
Ағымдағы орналасқан жердің бойлығы Пайдаланушының ағымдағы орналасу бойлығы, егер Ағымдағы орынды көрсету қосулы болса.
Жерсеріктік көрініс Картаның мәнері жерсеріктік көрініс немесе жол көрінісі болып табылады.
Кластерлік істіктер Карта бекітулері топтастырылады.
Масштабты басқару Масштабтау басқару элементі картада пайда болады.
Компасты басқару Компас басқару элементі картада пайда болады.
Қимылмен басқару Қадамды басқару элементі картада пайда болады.
Істік түсі Бекітулер түсі.
ItemsLabels Бекітулер үшін пайдалануға қажетті жолдар бар "Элементтер" сипатындағы баған.
ItemsAddresses Бекітулердің орнын көрсететін жолдар бар "Элементтер" сипатындағы баған.
ItemsLongitudes Бекітулердің бойлық орнын көрсететін жылжымалы үтір сандары бар деректер көзінде кестедегі баған саны.
ItemsLatitudes Бекітулердің ендік орнын көрсететін жылжымалы үтір сандары бар деректер көзінде кестедегі баған атауы.
Элементтер түстері Бекітпелер түсі.
Элементтер белгішелері Бекітпелер белгішесі.
Элементтер Бекітулердің көмегімен картаға тұрғызуға қажетті барлық жазбаларды қамтитын деректер көзіндегі кестенің атауы. Әр қатарда белгі, бойлық үшін жазба және әр қатар үшін ендік болуы тиіс.
OnMapClick Қандай да бір орын таңдалған кезде картаның жауап беру жолы.
OnSelect Картаны бекіту таңдалған кезде бағдарламаның әрекет ету жолы.
OnLoad Карта жүктеуді аяқтаған кезде қолданба қалай жауап береді.
OnItemsChange Карта бекітулері ауысқан кезде бағдарламаның жауап беру жолы.
Ақпараттық карталарды көрсету Ақпараттық карталардың карта бекітулерінде пайда болуы.
Пішіндерді көрсету Shapes_Items пішіндерінің картада пайда болуы.
Пішін белгілерін көрсету Белгілердің карта пішіндерінде пайда болуы.
Пішін салуға мүмкіндік беру Сурет құралдары басқару элементі картада пайда болуы.
Пішінді жоюға және белгіні өңдеуге мүмкіндік беру Пішіндерді жоюға және олардың белгілерін картада өңдеуге болатындығы туралы.
Shapes_Items Картада пішіндер түрінде көрсету керек GeoJSON нысандары бар барлық жазбаларды қамтитын деректер көзіндегі кесте атауы.
ShapeGeoJSONObjects Пішіндердің GeoJSON нысандарын көрсететін жолдары бар деректер көзіндегі кестедегі баған атауы.
ShapeLabels Пішіндер үшін белгілер ретінде пайдалану керек жолдары бар Shapes_Items бағаны.
ShapeColors Пішіндер түсі.
OnShapeSelected Картада пішін таңдалған кезде бағдарлама қалай әрекет етеді.
OnShapeCreated Картада пішін жасалған кезде бағдарлама қалай әрекет етеді.
OnShapeEdited Картада пішін өзгертілген кезде бағдарлама қалай әрекет етеді.
OnShapeDeleted Картада пішін жойылған кезде бағдарлама қалай әрекет етеді.

Карта басқару элементі үшін шығыс сипаттарды конфигурациялау

Карта басқару элементі пайдаланушы онымен бағдарлама ішінде өзара әрекеттескен кезде түрлі сипаттарды шығарады. Сіз бұл нәтижелерді басқа басқару элементтерінде немесе тәжірибені реттеу үшін пайдалана аласыз.

Келесі кестеде қолжетімді нәтиже сипаттары берілген.

Сипат. Сипаттама
Орталықтың орналасуы Карта ортасының орналасуы - .Latitude немесе .Longitude. Нәтиже бүтін сан болады. Мысалы, Map1.CenterLocation.Latitude ашу "47.60357" сияқты жалғыз бүтін санды шығарады.
Белгіленген Картадағы таңдалған бекіту.
SelectedItems Картада таңдалған кластердің таңдалған бекіту немесе бекітулері.
GeocodedItems Картадағы бекітулердің геокодталған орындары.
ClickedLocation Картадағы соңғы басылған орын - .Latitude немесе .Longitude.
Shapes_Selected Shapes_Items таңдалған пішіннің жазбасы.
Shapes_SelectedItems Shapes_Items таңдалған қабаттасатын пішіндердің жазбалары.
SelectedShape .Perimeter және .Area мәндері бар картадағы таңдалған пішін.
DeletedShape .Perimeter және .Area мәні бар картада соңғы жойылған пішін.
GeoJSON GeoJSON пішіміндегі мүмкіндік жиынтығындағы картадағы пішіндер тізімі.

Мекенжай кірісіне енгізілген мекенжайға бекіту қою үшін OnAddressSelect сипатында жасалған жиынды пайдаланамыз және оны карта басқару элементінде пайдаланамыз.

Сипат Value
Элементтер colSelectedAddress
ItemsLatitudes colSelectedAddress.Latitude
ItemsLongitude colSelectedAddress.Longitude

Карта басқару элементінің сипаттары

Бекітудің кейбір сипаттарын әр орын бекітуі бойынша теңшеуге болатыны туралы төменде түсіндіріледі:

  1. ItemsColors - әрбір орын үшін бекітудің түсін басқа түске жаңарту үшін Түс: қызыл жиынына баған қосып, оны Карта басқару элементінің ItemsColors деректер сипатында пайдаланыңыз.

  2. ItemsLabels - бекітудің белгісін әрбір орынның мекенжайын көрсететін басқа белгіге жаңарту үшін Label:AddressInput1.FreeformAddress жиынына баған қосып, оны Карта басқару элементінің ItemsLabels деректер сипатында пайдаланыңыз.

  3. ItemsIcons – әрбір орын үшін бекіту белгішесін өзгерту үшін жиынға баған қосып, оны Карта басқару элементінің ItemsIcons деректер сипатында пайдаланыңыз. Бұл мысалда формуласы бар үшбұрыш белгішесін Icon: triangle ретінде қосамыз.

    Кеңес

    Белгішелердің толық тізімі үшін Кескін үлгілерінің тізімі бөліміне өтіңіз.

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

Оларды жиынға қосқаннан кейін, Карта басқару элементінің Кеңейтілген қойыншасына өтіп, ItemsColors, ItemsLabels және ItemsIcons сипаттарын жаңартыңыз.

Карта басқару элементінің кеңейтілген сипаттары

Сынақ үшін бағдарламаны алдын ала қарау режимінде іске қосыңыз. Карта үшбұрыш белгішесі бар мекенжай кірісінде таңдалған орынды көрсетеді және мекенжай картада белгі ретінде көрсетіледі.

Карта басқару элементін жаңарту мекенжайы

Сонымен қатар қараңыз

Интерактивті карта басқару элементі