Power Apps
Power Apps
Despre Autor
Ce este PowerApps.................................................................................................................. 6
Rezumat................................................................................................................................ 12
Rezumat...................................................................................................................... 21
1|P a g e
Bară de formulă...............................................................................Eroare! Marcaj nedefinit.
Opț iuni, Surse de date ș i Panoul avansat .............................Eroare! Marcajul nu este definit.
2|P a g e
Rezumat...................................................................................Eroare! Marcaj nedefinit.
Crearea ș i declanș area unui flux din PowerApps......................Eroare! Marcajul nu este definit.
3|P a g e
Sumar...................................................................................Eroare! Marcaj nedefinit.
4|P a g e
Despre autor
Carlos Aguilar Mares este Managerul Grupului de Inginerie Partener, conducând
Echipa de inginerie PowerApps face parte din echipa Cloud ș i Enterprise de la Microsoft în
responsabilitatea de a crea cea mai bună platformă pentru construirea uș oară a aplicaț iilor mobile pentru afaceri
fără cod. În trecut, a condus echipa Azure responsabilă de experienț a de la început până la sfârș it
de a descoperi([Link] înregistrare
(Invalid URL, cannot be translated.)portal de management
([Link] portal de management
([Link] Azure Resource Manager, Windows Azure Pack, Azure
Aplicaț ii Logice ș i altele. Anterior, a fost Manager de Dezvoltare pentru Internet
Grupul de produse Servicii de Informaț ii (IIS) de la Microsoft care a dezvoltat serviciul IIS în
Aplicaț ii web ș i servicii ș i alte produse precum Web Matrix, Web Platform
Installer, Web Deploy, URL Rewrite ș i altele. Înainte de asta, a lucrat la [Link]
Echipa de Pagini ș i Controale 2.0 ș i, înainte de asta, a fost Consultant de Dezvoltare
cu familia lui, precum ș i jucând tenis, chitară, Xbox, codând jocuri ș i destul de mult
orice legat de computere. Co-autor al cărț ii IIS 7.0 Resource Kit.
5|P a g e
Capitolul 1 - Începând
Ce este PowerApps
Microsoft PowerApps este o nouă platformă pentru a crea aplicaț ii mobile pentru afaceri.
care pot fi construite în câteva minute fără a fi necesară scrierea de cod (cunoscut ș i sub denumirea de No-
aplicaț ii multifuncț ionale care suportă iOS, Android, Windows Phone, Windows ș i
web-ul. PowerApps îț i permite să construieș ti cu uș urinț ă aplicaț ii care se conectează la mai multe
surse de date, inclusiv baze de date SQL, liste SharePoint, foi de calcul Excel, Office 365,
Dynamics CRM, OneDrive, Dropbox, Google Drive, Trello, Facebook, Twitter
Wunderlist ș i altele. Dar, mai important, include o nouă afacere sigură
bază de date numită Modelul Comun de Date Microsoft.
peste fiecare interacț iune în spaț iul consumatorului/personal unde există aplicaț ii mobile
să ne ajute în fiecare aspect al vieț ilor noastre - de la reț elele sociale, împărtăș irea de fotografii, interactiv
media, ș tiri, instrumente smart home ș i multe altele - aproape tot ceea ce avem nevoie poate fi
funcț ionând pe sisteme legate care sunt greu de expus dispozitivelor mobile, din cauza costurilor
rapoarte, gestionarea facturilor, raportarea absenț elor, unelte de vânzări, urmărirea timpului ș i multe altele
6|P a g e
mai multe sunt exemple de date esenț iale care, istoric, au fost accesibile doar în interior
reț ea prin aplicaț ii intranet. Numeroase studii de cercetare au demonstrat că
există un interes uriaș din partea companiilor de a-ș i împuternici angajaț ii ș i de a-i mobiliza pe aceș tia
Unul dintre primele concepte cu care trebuie să te familiarizezi atunci când construieș ti aplicaț ii cu PowerApps este
modul în care să gândim atunci când interacț ionăm cu datele ș i realizăm transformări asupra acestora.
PowerApps foloseș te un model numit programare bazată pe fluxuri de date, unde accentul este pus pe
Ieș ire. Astfel de transformări sunt activate doar când valorile intrărilor lor sunt
modificat, iar odată ce rezultatul este evaluat, acesta declanș ează actualizări pe alte
componente care îl folosesc ca intrare. Aceasta înseamnă că nu trebuie să te ocupi de mari
instrucț iuni imperative complexe care oferă logica pentru a impinge modificări arbitrare la
Toate acestea sună foarte complicat, dar din fericire nu trebuie să îț i faci griji în legătură cu toate acestea.
complexitatea din spatele acestuia, de fapt, dacă aț i folosit instrumente precum Microsoft Excel sau altele
7|P a g e
pentru a afiș a preț ul final într-o altă celulă, selectaț i celula „Total” unde doriț i
rezultatul calculului care trebuie afisat si introducerea formulei de calcul corespunzatoare
în acesta folosind valorile din celelalte două celule ca intrări. Microsoft Excel va calcula
automatic atunci când ș i cum să actualizăm conț inutul în celula de ieș ire ș i oricând
orice valori de intrare sau celule utilizate în acea calculare a formulei sunt modificate. Nu te
trebuie să te îngrijorezi de ordinea calculelor, actualizează logica în mai multe locuri pentru a
actualizează aceeaș i valoare a celulei, invalidări sau orice altceva. Excel va detecta chiar dacă tu
PowerApps aplică acelaș i model pentru construirea aplicaț iilor mobile bogate, cross-platform.
oferind un set bogat de funcț ii sau formule care pot fi utilizate pentru a efectua calcule
la fel ca Excel, dar de asemenea îl extinde înainte cu un set de construcț ii imperative care
poate fi folosit pentru a actualiza datele, a comunica cu surse externe de date, a naviga între
8|P a g e
controale pentru a afiș a date din casete de text de intrare simple, scanare de coduri de bare, medii bogate
9|P a g e
Componentele principale ale PowerApps
Platforma PowerApps este alcătuită din multe componente cu care veț i interacț iona, inclusiv:
PowerApps Players – Acestea sunt aplicaț iile mobile care le permit utilizatorilor să ruleze
10|P a g e
Bază de date SQL, FTP, SMTP, RSS ș i multe altele. Gateway-urile îț i permit să te conectezi
procese de lungă durată într-o manieră simplă, prin click-uri, folosind acelaș i lucru
ș i crea entităț i personalizate, liste de selecț ie ș i altele, precum ș i funcț ii pentru a proteja,
11|P a g e
Rezumat
În acest capitol, am discutat pe scurt despre PowerApps ș i motivaț ia pentru Low code-
Platforme fără cod pentru a ajuta organizaț iile să ofere acces la informaț iile lor
angajaț ii necesită soluț ii rapide fără a cheltui luni întregi ș i resurse costisitoare pe
crearea de aplicaț ii multifuncț ionale ș i permiterea acestora să livreze un volum mare de muncă acumulat
De asemenea, am vorbit despre cum PowerApps oferă un mediu familiar care oferă o
combinarea unui mediu de design similar cu Microsoft PowerPoint, oferind o
Experienț ă de execuț ie a formulilor ș i expresiilor asemănătoare Microsoft Excel, oferindu-vă o simplă
ș i totuș i o platformă puternică pentru a construi aplicaț ii de afaceri într-un mod foarte rapid.
Spre deosebire de majoritatea altor medii de dezvoltare rapidă a aplicaț iilor, PowerApps oferă
experienț e sau care te limitează la doar platforme specifice, backend sau acces la date.
PowerApps îț i oferă o modalitate uș oară de a te conecta la un număr în continuă creș tere de SaaS
creează experienț e bogate care nu sunt limitate la forme simple, ci mai degrabă care oferă
capacităț i ș i experienț e mobile bogate.
În cele din urmă, am discutat pe scurt despre unele dintre principalele componente care alcătuiesc PowerApps.
platformă.
12|P a g e
Capitolul 2 - Construirea aplicaț iilor
care te salută cu numele tău complet ș i îț i afiș ează ș i fotografia (dacă ai configurat-o
unul la ([Link]
Pentru a face acest lucru, vom folosi PowerApps Studio. Dacă nu l-ai instalat, îl poț i obț ine prin
în acest exemplu simplu, vom folosi opț iunea Blank App->Phone Layout.
13|P a g e
Figura 4. Crearea unui ecran de aplicaț ie - Aplicaț ie goală - Layout pentru telefon
Pentru această aplicaț ie, vom adăuga o casetă de text ș i o imagine. Pentru a face asta, foloseș te doar
Inserare meniu în partea de sus ș i alegeț i Casetă de text.
Odată ce controlul Text box este adăugat pe Canvas, modifică formula pentru Textul său
Bună,
14|P a g e
Figura 5. Formula User() în acț iune
Acum adăugaț i un control de imagine selectând în Inserare Media Controlul imaginii. Odată ce
Controlul imagine este adăugat la Canvas, modifică formula pentru proprietatea sa Imagine pentru a utiliza
formulă „User()” pentru a obț ine fotografia configurată pentru utilizatorul logat în prezent
utilizând următoarea expresie:
User().Image
Canvas Live
Un lucru pe care îl poț i vedea imediat este că PowerApps oferă un adevărat canvas live
experienț ă în care orice modificări pe care le faci sunt reflectate într-o instanț ă în execuț ie a
aplicaț ie. Aceasta nu este o emulare a aplicaț iei, de fapt este aplicaț ia
rulând încorporat, folosind date reale ș i comportament real.
15|P a g e
Rularea aplicaț iei
Pentru a rula aplicaț ia în modul full screen, poț i apăsa "F5" sau pe pictograma "play" din partea de sus.
Notă: Click pe pictograma Rulaț i doar comută pe ecran complet zona de lucru ș i
nimic mai mult decât atât, cu alte cuvinte aplicaț ia nu se va reporni sau
deblochează orice logică suplimentară faț ă de cea deja existentă în canvas-ul live.
Figura 7. Salvează ca
16|P a g e
Figura 8. PowerApps pe iOS
utilizator ș i parolă suplimentare. În plus, acest lucru înseamnă că dacă un angajat pleacă
compania, aceș tia vor pierde automat accesul la aplicaț iile corporative
oferind o soluț ie foarte robustă pentru aplicaț iile de linie de afaceri. De asemenea oferă o
un model flexibil de partajare care se poate baza pe grupuri de securitate ș i altele. Vestea bună este
dacă nu ai unul, putem crea unul pentru tine dacă foloseș ti munca sau ș coala ta
cont în doar câteva secunde ș i gratuit.
17|P a g e
Figura 9. Suport Azure Active Directory în PowerApps
Toate aplicaț iile – Afiș ează toate aplicaț iile pe care le are orice persoană din organizaț ia ta
împărtăș it cu tine
Featured–Afiș ează aplicaț iile care au fost etichetate de organizaț ia dumneavoastră pentru
a fi prezentat
18|P a g e
Exemplare - Acces la câteva mostre care sunt furnizate pentru a le încerca
Pentru a rula orice aplicaț ie, doar atingeț i pictograma ș i aplicaț ia va rula.
Notă: Prima dată când rulezi o aplicaț ie pe dispozitivul tău actual PowerApps
voi crea un pachet pentru acesta ș i îl voi descărca pe dispozitivul tău ș i îț i voi arăta o
Mesajul „Se descarcă” în timp ce se întâmplă asta. Aceasta poate dura câteva secunde.
19|P a g e
Figura 12. Descărcarea unei aplicaț ii în PowerApps Player
20|P a g e
Figura 13. Ecran de pornire al aplicaț iei
Sumar
În acest capitol, am explorat pe scurt PowerApps Studio ș i am creat o aplicaț ie simplă
care utilizează formula User(). Poț i găsi toate formulele disponibile ș i
documentaț ia în Referinț a Formula PowerApps la
Unable to access the content of the provided URL for translation..
În sfârș it, am folosit PowerApps Player pe un dispozitiv mobil pentru a rula aplicaț ia.
21|P a g e
Anexa B: Crearea unei aplicaț ii de calendar folosind PowerApps
Ce vom construi
Pentru acest exemplu simplu, vom construi o aplicaț ie care îț i permite să
afişează o navigare asemănătoare cu un calendar pe 7 zile pentru ca utilizatorii să selecteze o zi. Pe măsură ce selectaț i
date, evidenț iază data folosind o culoare diferită pentru font ș i desenează un cerc
în jurul datei selectate.
Aceasta nu este destinată să fie o aplicaț ie completă, dar această navigare poate fi uș or
extins pentru a construi o aplicaț ie mai bogată care să afiș eze întâlniri, sarcini sau alte elemente,
prin adăugarea unei Galerii Verticale ș i setarea elementelor sale pentru a include un Filtru după data selectată
22|P a g e
ș i valorifică conexiunile către servicii precum Modelul de Date Comun, Office 365 sau Google
Stocarea datei
Pentru a construi această aplicaț ie vom folosi două variabile de context (usingUpdateContext) înthe
ecran principal
pe selectorul de dată.
initializează starea când nu a fost setată pentru a evita resetarea datelor pe care le are utilizatorul
s-ar fi putut stabili. Vom vedea cum să facem asta mai târziu.
Lansaț i PowerApps.
Selectaț i opț iunea Nou Aplicaț ie goală Dispunerea telefonului.
Selectaț i primul ecran ș i comutaț i la fila Conț inut din panglică. Faceț i clic pe Ecran1
eticheta nume ș i redenumeș te-o în EcranPrincipal.
23|P a g e
Figura 15. Schimbarea numelui pentru un ecran sau control
Acum, vom adăuga codul pentru a iniț ializa variabilele, pentru aceasta selectaț i
Pe vizibilitate în lista de proprietăț i ș i setaț i următoarea regulă:
UpdateContext({DataSelectata:Astazi(),DataDeStart:Astazi() -
Ziua săptămânii(Today()) + 1}
24|P a g e
o practică obiș nuită atunci când construieș ti aplicaț ii pentru a inspecta rapid
valorile se schimbă uș or pe măsură ce se transformă.
Notă importantă: S-ar putea să fie nevoie să adăugaț i un nou ecran, selectaț i-l în ecran
de pe ecran este declanș at ș i variabila este iniț ializată corect. Aceasta este o
limitările actuale ale PowerApps care vor fi abordate în viitor.
Acum că avem cele două variabile iniț ializate ș i disponibile pentru noi, este timpul să construim.
interfaț a utilizatorului care ne va permite să citim valorile, precum ș i să schimbăm data, de asemenea
necesar.
DreptunghiFundal
Umple: Negru
X: 0,Y:0,Width: 640,Height: 174
25|P a g e
2) Adăugarea unei etichete pentru a afi ș a luna
Aceasta va fi eticheta care va afiș a numele lunii care este în prezent vizibilă
date astfel încât utilizatorii să poată obț ine contextul corect.
EtichetaLuniiSelectate
Aliniere: Centru
Alb
21
X: 0,Y:0,Width: 640
Urmăreș te(Text(LaDataInceperii, "mmmm"))
Regula de text de mai sus foloseș te formula de formatare "Text" pentru a afiș a numele complet al
luna (de exemplu, octombrie), ș i apoi foloseș te formula „Upper” pentru a o converti în majuscule
caz. (de exemplu, OCTOMBRIE)
26|P a g e
Pentru a permite utilizatorilor să selecteze zile diferite, dorim să afiș ăm o săptămână întreagă (7 zile)
începând de duminică, astfel încât să poată face clic pe unul dintre ele cu uș urinț ă. Pentru aceasta, vom folosi un
Galerie Orizontală, ș i o vom lega de un array de 7 elemente (0-6) pe care îl vom folosi
pentru a adăuga o zi pentru fiecare element la DataÎncepere astfel încât să putem calcula cu uș urinț ă
proprietăț i
EtichetaNumărDată
X: 0,Y: 44,Width:76,Height: 40
Aliniere: Centru
16
Dacă([Link], RGBA(255,255,255,1), RGBA(200,
200, 200, 1))
Ziua(StartDate + Valoare)
Proprietatea Color de mai sus foloseș te“Dacă” declaraț ie pentru a verifica dacă actualul
data este cea selectată în galerie, iar dacă da, va folosi o culoare diferită
pentru a diferenț ia selecț ia utilizatorilor. Într-o galerie, poț i folosi acestElement pentru a
Proprietatea Vizibilă este setată la adevărat dacă data selectată este aceeaș i
ca data pe care o reprezintă articolul curent.
28|P a g e
UpdateContext({SelectedDate:DateAdd(StartDate,
[Link], Zile)})
Aici proprietatea Text foloseș te“Stânga” formulă pentru a obț ine doar primul caracter
din ziua cu trei litere (Lun, Mar, Mie, etc).
De asemenea, stabilim evenimentul „OnSelect” pentru a actualiza SelectedDate cu
valoarea pe care acest articol o reprezintă.
Până acum ar trebui să poț i selecta orice date afiș ate ș i aplicaț ia va
reacț ionează la data selectată ș i reflectă valoarea pe orice control care depinde de aceasta.
Pentru aceasta, vom folosi o pictogramă, aș a că faceț i clic pe Inserare Iconă Săgeata stânga ș i setează
următoarele proprietăț i:
29|P a g e
PrevWeekArrow
X: 0,Y: 70,Width: 36,Height: 72
Alb
OnSelect:ActualizeazăContext({DataÎnceperii:AdaugăData(DataÎnceperii, -7,
Zile)
SăptămânaUrmătoareSăgeată
X: 600,Y: 70,Width: 36,Height: 72
Alb
UpdateContext({StartDate:DateAdd(StartDate, 7)})
În mod similar, aici evenimentul OnSelect specifică actualizarea variabilei StartDate prin
adăugând o săptămână la data de început curentă.
30|P a g e
Vrem să ne asigurăm că utilizatorului îi este evident care dată este selectată, aș a că pentru
TextboxDataSelectată
12
X: 0,Y: 174,Width: 640,Height: 43
Umple: RGBA(242, 242, 242, 1)
PaddingLeft: 25
SUPERIOR(Text(SelectedDate, "mmmm dd"))
În acest moment, selectorul nostru de dată este complet ș i acum poț i naviga folosind săgeata
iconi ș i selectează orice dată.
Pentru a finaliza aplicaț ia, putem folosi un simbol „Creare” făcând clic pe Inserare. Iconă Adăugaț i
cu următoarele proprietăț i:
AdaugăIcon
Alb
X: 586,Y: 12,Width: 42,Height: 42
OnSelect:Navighează(CreateTask, [Link],
DataSelectată
31|P a g e
Aici, evenimentul OnSelect navighează la ecranul CreateTask ș i transmite
variabila locală (pentru MainScreen) SelectedDate la ea, astfel încât să putem face referire la
ecran uș or de acolo.
Adăugaț i un nou ecran ș i numiț i-l „CreateTask” pentru a permite funcț ionarea navigaț iei „+”.
Gânduri finale
Puteț i adăuga cu uș urinț ă o bară de navigare ș i folosi formule precumeNavigaț iș iÎnapoi, pentru
completaț i aplicaț ia.
Pentru a face parte dintr-o aplicaț ie reală, poț i folosi acum o expresie precum
„Filtrează ('Comandă de vânzare', DataComenzii = DataSelectată)” ș i leagă-l de o Galeria unde
afiș ează toate comenzile de vânzare venind din datele tale.
Am menț ionat pe scurt că în aplicaț ia noastră este important să actualizăm doar contextul
la evenimentul OnVisible când se navighează către acesta pentru prima dată, astfel încât când utilizatorul
32|P a g e