Afișați text, date și ore în aplicațiile proiectate pe pânză

În Power Apps, adăugați datele și orele într-o aplicație proiectată pe pânză și formatați-le pentru a afișa nivelul potrivit de detalii sau pentru a reflecta setări dvs. regionale. Calculați perioada de timp între două date sau calculați o dată care reprezintă o anumită perioadă de timp înainte sau după o dată specificată. Convertiți datele în sau din valori separate pentru zile, luni și ani și convertiți orele în sau din valori separate pentru ore, minute și secunde.

De exemplu, adăugați date de la utilizatori despre tranzacții de stocuri sau întâlniri cu clienți, date dintr-o sursă externă sau date dintr-o altă aplicație creată în Power Apps. Dacă aceste date includ ore până la milisecundă, rotunjiți până la cel mai apropiat minut pentru simplitate. Calculați câte zile rămân înainte de o etapă importantă. Dacă doriți să programați întâlniri cu clienții la fiecare cinci zile, calculați automat datele respective. Dacă data de 10 mai 1985 este memorată în câmpuri separate pentru zi, lună și an, consolidați-le într-o singură valoare. În schimb, fragmentați fiecare dată în valori separate dacă aplicația dvs. le gestionează separat.

Cerințe preliminare

Afișarea textului într-un control Etichetă

Afișați textul într-un control Etichetă prin setarea valorii proprietății sale Text. Setați această proprietate tastând direct în control sau tastând o expresie în bara de formule.

  • Dacă tastați direct în control, acesta arată exact ce tastați.
  • Dacă introduceți o expresie în bara de formule, controlul arată rezultatul expresiei.

Aici sunt câteva exemple.

  1. Adăugați un control Etichetă numit ShowText și setați proprietate sa Text pentru această formulă:
    Now()

    Dacă computerul dvs. este setat pe setările regionale „en-us”, data și ora curente apar în acest format:
    mm/dd/yyyy hh:mm AM/PM

    Dacă computerul dvs. este setat pe o setare regională, cum ar fi „fr-fr”, data și ora curente apar în acest format:
    dd/mm/yyyy hh:mm AM/PM

  2. Setați proprietatea Text a ShowText la această formulă:
    DateDiff(Today(), DateValue("01/01/2020"))

    Controlul arată numărul de zile dintre ziua de astăzi și 1 ianuarie 2020, prin utilizarea acestor funcții:

    • DateDiff, care calculează numărul de zile, trimestre sau ani între două date.
    • Today, care calculează ziua curentă ca valoare.
    • DateValue, care transformă un șir literal, așa cum este afișat între ghilimele duble, la o valoare la care pot fi efectuate calcule.
  3. Adăugați un control Introducere text numit BirthDate și mutați-l sub ShowText.

  4. În BirthDate, tastați luna și ziua nașterii dvs. (de exemplu, 05/18).

  5. Setați proprietatea Text a ShowText la această formulă:
    DateDiff(Today(), DateValue(BirthDate.Text))

    ShowText arată numărul de zile dintre ziua de astăzi și orice dată introduceți în BirthDate. Dacă ziua dvs. de naștere a avut deja loc anul acesta, ShowText afișează o valoare negativă.

Formatați datele și orele folosind DateTimeValue

Convertiți datele și orele din șiruri de text în valori, pe care le puteți formata într-o varietate de moduri și pe care le puteți folosi în calcule. Specificați formatul utilizând opțiuni încorporate și personalizate.

Notă

Funcțiile DateTimeValue și DateValue pot converti date în oricare dintre aceste formate în valori:

  • LL/ZZ/AAAA
  • ZZ/LL/AAAA
  • ZZ lună AAAA
  • Luna ZZ, AAAA
  1. Adăugați un control Introducere text numit ArrivalDateTime și introduceți o dată și o oră în acest format:
    5/10/85 6:15 AM

  2. Adăugați un control Etichetă numit ShowDate și setați proprietatea sa Text pentru această formulă:
    DateTimeValue(ArrivalDateTime.Text)

    ShowDate arată aceleași informații pe care le-ați introdus, dar acestea au fost transformate din text în valoare și formatate diferit. De exemplu, anul apare ca patru cifre în loc de doar două.

  3. Modificați proprietatea Text a ShowDate la această formulă:
    DateTimeValue(ArrivalDateTime.Text, "fr")

    ShowDate arată ziua înainte de lună, așa cum se aștepta un utilizator francez.

    Sfat

    Pentru a afișa o listă de alte setări regionale în Intellisense, eliminați ghilimele de închidere și fr din formulă, dar lăsați ghilimele de deschidere:

  4. Pentru a utiliza unul dintre numeroasele formate încorporate, modificați proprietatea Text a ShowDate la această formulă:
    Text(DateTimeValue(ArrivalDateTime.Text), DateTimeFormat.LongDateTime)

    ShowDate arată ziua săptămânii, data și ora.

    Sfat

    Parametrul DateTimeFormat acceptă multe alte formate încorporate. Pentru a afișa acea listă, eliminați LongDateTime din formulă.

  5. Pentru a utiliza un format personalizat, modificați proprietatea Text a ShowDate la această formulă:
    Text(DateTimeValue(ArrivalDateTime.Text), "mm/dd/yyyy hh:mm:ss.fff AM/PM")

    ShowDate arată valoarea dată/oră în formatul specificat, inclusiv milisecundele.

    Sfat

    Pentru a rotunji timpul până la cea mai apropiată zecime sau sutime de secundă, specificați hh:mm:ss.f sau hh:mm:ss.ff în formulă.

Formatați o dată folosind DateValue

  1. Adăugați un control Introducere text numit DataSosirii și apoi tastați o dată în el (de exemplu, 5/10/85).

  2. Adăugați un control Etichetă numit FormatDată și setați proprietatea sa Text pentru această formulă:
    DateValue(ArrivalDate.Text)

    FormatDate afișează data pe care ați tastat-o, cu excepția anului, în care apar patru cifre.

  3. Setați proprietatea Text a FormatDate la această formulă:
    DateValue(ArrivalDate.Text, "fr")

    FormatDate arată ziua înainte de lună, așa cum s-ar aștepta un utilizator francez.

  4. Pentru a utiliza unul dintre numeroasele formate încorporate, setați proprietatea Text a FormatDate la această formulă:
    Text(DateValue(ArrivalDate.Text), DateTimeFormat.LongDate)

    FormatDate arată ziua săptămânii, luna, ziua și anul.

  5. Pentru a utiliza un format personalizat, setați proprietatea Text a FormatDate la această formulă:
    Text(DateValue(ArrivalDate.Text), "yy/mm/dd")

    FormatDate arată data în formatul specificat.

Formatați o oră folosind DateTimeValue

  1. Adauga un control Introducere text numit ArrivalTime și apoi tastați 6:15 AM.

  2. Adăugați un control Etichetă numit ShowTime.

  3. Pentru a utiliza unul dintre numeroasele formate încorporate, setați proprietatea Text a ShowTime la această formulă:
    Text(DateTimeValue(ArrivalTime.Text), DateTimeFormat.LongTime)

    ShowTime arată ora specificată, inclusiv secundele.

  4. Pentru a utiliza un format personalizat, setați proprietatea Text a ShowTime la această formulă:
    Text(DateTimeValue(ArrivalTime.Text), "hh:mm:ss.fff AM/PM")

    ShowTime arată ora pe care ați specificat-o, inclusiv secundele și milisecundele.

    Sfat

    Pentru a rotunji ora până la cea mai apropiată zecime sau sutime de secundă, introduceți hh:mm:ss.f sau hh:mm:ss.ff în formulă.

Afișarea orei dintre date

  1. Adăugați două controale Introducere text numite Pornire și Încheiere.

  2. Tastați 4/1/2015 în Pornire și tastați 1/1/2016 în Încheiere.

  3. Adăugați un control Etichetă numit DateDiff și setați proprietatea Text pentru această formulă:
    DateDiff(DateValue(Start.Text), DateValue(End.Text))

    DateDiff arată 275, care este numărul de zile cuprinse între 1 aprilie 2015 și 1 ianuarie 2016.

  4. Setați proprietatea Text a DateDiff la această formulă:
    DateDiff(DateValue(Start.Text), DateValue(End.Text), Months)

    DateDiff arată 9, care este numărul de luni cuprins între 1 aprilie 2015 și 1 ianuarie 2016. Înlocuiți Luni cu Trimestre sau Ani pentru a arăta ora în acele unități.

Identificați o dată înainte sau după o altă dată

  1. Adăugați un control Introducere text numit Pornire și tastați 5/10/1985.

  2. Adăugați un control Etichetă numit DateAdd și setați proprietatea Text pentru această formulă:
    DateAdd(DateValue(Start.Text), 3)

    DateAdd afișează 5/13/1985, care este la trei zile după data din Pornire.

  3. Setați proprietatea Text a DateAdd la această formulă:
    DateAdd(DateValue(Start.Text), -3)

    DateAdd afișează 5/7/1985, care este cu trei zile înainte de data din Pornire.

  4. Modificați proprietatea Text a DateAdd la această formulă:
    DateAdd(DateValue(Start.Text), 3, Months)

    Eticheta arată 8/10/1985, care este la trei luni de la data din Pornire. Înlocuiți Luni cu Trimestre sau Ani pentru a identifica o dată care reprezintă numărul specificat de trimestre sau ani înainte sau după data din Pornire.

Calculați datele în funcție de ani, luni și zile

  1. Adăugați trei controale Listă verticală numite An, Lună și Zi.

  2. Setați proprietatea Elemente a An la această formulă:
    Table({Year:"2014"}, {Year:"2015"}, {Year:"2016"})

  3. Setați proprietatea Elemente a Lună la această formulă:
    Table({Month:"1"}, {Month:"2"}, {Month:"3"}, {Month:"4"}, {Month:"5"}, {Month:"6"}, {Month:"7"}, {Month:"8"}, {Month:"9"}, {Month:"10"}, {Month:"11"}, {Month:"12"})

  4. Setați proprietatea Elemente a Zi la această formulă:
    Table({Day:"1"}, {Day:"2"}, {Day:"3"}, {Day:"4"}, {Day:"5"}, {Day:"6"}, {Day:"7"}, {Day:"8"}, {Day:"9"}, {Day:"10"}, {Day:"11"}, {Day:"12"}, {Day:"13"}, {Day:"14"}, {Day:"15"}, {Day:"16"}, {Day:"17"}, {Day:"18"}, {Day:"19"}, {Day:"20"}, {Day:"21"}, {Day:"22"}, {Day:"23"}, {Day:"24"}, {Day:"25"}, {Day:"26"}, {Day:"27"}, {Day:"28"}, {Day:"29"}, {Day:"30"}, {Day:"31"})

  5. Adăugați un control Etichetă și setați proprietatea sa Text la această formulă:
    Text(Date(Value(Year.SelectedText.Value), Value(Month.SelectedText.Value), Value(Day.SelectedText.Value)), DateTimeFormat.LongDate)

    Miercuri, 1 ianuarie 2014 este listat implicit. Selectați diferite valori în controalele Listă verticală pentru a modifica data în controlul Etichetă.

Este posibil să fie nevoie să convertiți datele la care nu vă așteptați. Dacă adăugați controalele Introducere text în loc de controalele Listă verticală, un utilizator poate introduce o dată incorectă, cum ar fi 45 mai. Funcția Dată gestionează datele atipice în următoarele moduri:

  • Dacă o valoare a unui an este cuprinsă între 0 și 1899 (inclusiv), funcția adaugă această valoare la 1900 pentru a calcula anul.
  • Dacă o valoare a unui an este cuprinsă între 1900 și 9999 (inclusiv), funcția folosește această valoare ca an.
  • Dacă o valoare a anului este mai mică de 0 sau este mai mare de 10000, funcția returnează o valoare de eroare.
  • Dacă o valoare a lunii este mai mare de 12, funcția adaugă acel număr de luni la prima lună a anului specificat.
  • Dacă o valoare a lunii este mai mică de 1, funcția scade multe luni, plus 1, din prima lună a anului specificat.
  • Dacă o valoare a zilei este mai mare decât numărul de zile din luna specificată, funcția adaugă acele zile la prima zi a lunii și returnează data corespunzătoare dintr-o lună ulterioară.
  • Dacă o valoare a zilei este mai mică de 1, funcția scade acele zile, plus 1, din prima zi a lunii specificate.

Calculați timpii în funcție de ore, minute și secunde

  1. Adăugați două liste Listă verticală numite Oră și Minut.

  2. Setați proprietatea Elemente a Oră la această formulă:
    Table({Hour:"9"}, {Hour:"10"}, {Hour:"11"}, {Hour:"12"}, {Hour:"13"}, {Hour:"14"}, {Hour:"15"}, {Hour:"16"}, {Hour:"17"})

  3. Setați proprietatea Elemente a Minut la această formulă:
    Table({Minute:"0"}, {Minute:"15"}, {Minute:"30"}, {Minute:"45"})

  4. Adăugați un control Etichetă și setați proprietatea sa Text la această formulă:

    Text(Time(Value(Hour.SelectedText.Value), Value(Minute.SelectedText.Value),0), DateTimeFormat.ShortTime)

  5. Selectați 15 în Oră și 45 în Minut.

    Controlul Etichetă afișează 3:45 PM.

    Puteți adăuga intrări la Oră și Minut astfel încât utilizatorii să poată selecta dintr-o gamă mai mare de ore și un număr mai precis de minute. Puteți adăuga, de asemenea, un al treilea control Listă verticală, astfel încât utilizatorii să poată specifica secundele. Dacă adăugați o a treia listă, setați proprietatea Text a controlului Etichetă la următoarea expresie:
    Text(Time(Value(Hour.Selected.Value), Value(Minute.Selected.Value), Value(Second.Selected.Value)), DateTimeFormat.LongTime)

Consultați și

Exemple control selector dată

Notă

Ne puteți spune care preferințele dvs. lingvistice pentru documentație? Răspundeți la un chestionar scurt. (rețineți că acest chestionar este în limba engleză)

Chestionarul va dura aproximativ șapte minute. Nu sunt colectate date personale (angajament de respectare a confidențialității).