Ovládacie prvky Formulár na zobrazenie a Formulár na úpravy v službe Power Apps

Zobrazujú, upravujú a vytvárajú záznamy v zdroji údajov.

Popis

Ak pridáte ovládací prvok Formulár na zobrazenie, používateľ si bude môcť zobraziť všetky polia záznamu, alebo iba tie, ktoré zadáte. Ak pridáte ovládací prvok Formulár na úpravy, používateľ bude môcť tieto polia upravovať, vytvoriť záznam a uložiť tieto zmeny do zdroja údajov.

Príklad formulára a ovládacích prvkov zobrazenia formulára.

Ak pridáte ovládací prvok Gallery, môžete ho nakonfigurovať tak, aby zobrazil tabuľku v zdroji údajov a potom nakonfigurovať formulár tak, aby zobrazil záznam, ktorý používateľ v galérii vybral. Môžete tiež pridať jeden alebo viac ovládacích prvkov Button, ktoré si používateľ bude môcť vybrať na uloženie alebo zrušenie úprav a na vytvorenie záznamu. Pomocou všetkých týchto ovládacích prvkov môžete vytvoriť kompletné riešenie.

Obmedzenia

Ovládací prvok formulára má tieto obmedzenia:

  • Formuláre nemôžete kopírovať a vkladať do dátových kariet. Toto má zabrániť vytvoreniu určitých kombinácií ovládacích prvkov, ktoré ohrozujú stabilitu a výkon aplikácie.

Výber záznamu

Pre oba typy formulárov nastavte vlastnosť DataSource na tabuľku záznamov a vlastnosť formulára Item nastavte tak, aby zobrazovala konkrétny záznam v tejto tabuľke. Môžete napríklad nastaviť vlastnosť formulára Item na vlastnosť SelectedItem ovládacieho prvku Gallery. Keď si používateľ vyberie záznam v galérii, rovnaký záznam sa objaví aj vo formulári, formulár však dokáže zobraziť viac polí. Ak sa používateľ do galérie vráti a vyberie iný záznam, vlastnosť galérie SelectedItem sa zmení. Táto zmena aktualizuje vlastnosť formulára Item, ktorá potom zobrazí novo vybraný záznam.

Môžete tiež nastaviť vlastnosť formulára Item s použitím ovládacieho prvku Rozbaliť, ako to popisuje téma Zobrazenie, pridanie alebo úprava záznamu, alebo pomocou funkcie, ako je napríklad Lookup alebo First. Môžete napríklad v niektorom z týchto vzorcov nastaviť vlastnosť Item, aby sa položka Fabrikam zobrazila v tabuľke Obchodný vzťah v Microsoft Dataverse:

First(Accounts)

Lookup(Accounts, "Fabrikam" in name)

Každý ovládací prvok formulára obsahuje jeden alebo viac ovládacích prvkov Card. Nastavením vlastnosti karty DataFieldurčíte, ktoré pole bude karta zobrazovať a ďalšie podrobnosti.

Vytvorenie záznamu

Keď je ovládací prvok Formulár na úpravy v režime Upraviť, používateľ môže aktualizovať ten záznam, ktorý je uvedený vo vlastnosti formulára Item. Pri kontrole vráti vlastnosť Mode hodnotu Upraviť.

Avšak keď je ovládací prvok Formulár na úpravy v režime New, vlastnosť Item je ignorovaná. Formulár nezobrazuje existujúci záznam. Namiesto toho sa hodnoty v každom poli zhodujú s predvolenými hodnotami zdroja údajov, s ktorými ste formulár nakonfigurovali. To, že sa formulár prepne do tohto režimu, spôsobí funkcia NewForm.

Môžete napríklad nastaviť vlastnosť tlačidla Text tak, aby zobrazovala Nový a vlastnosť OnSelect na vzorec, ktorý obsahuje funkciu NewForm. Ak používateľ vyberie toto tlačidlo, formulár sa prepne do režimu Nový, takže používateľ bude môcť vytvoriť záznam so známymi hodnotami.

Formulár sa prepne späť do režimu Upraviť vtedy, keď sa spustí úspešne buď funkcia ResetForm, alebo funkcia SubmitForm.

  • Môžete nastaviť vlastnosť tlačidla Text na Zrušiť a vlastnosť OnSelect na vzorec, ktorý obsahuje funkciu ResetForm. Ak používateľ vyberie toto tlačidlo, zahodia sa všetky prebiehajúce zmeny a hodnoty vo formulári sa opäť budú zhodovať s prednastavenými hodnotami zdroja údajov.
  • Môžete nastaviť vlastnosť tlačidla Text na Uložiť zmeny a vlastnosť OnSelect na vzorec, ktorý obsahuje funkciu SubmitForm. Ak používateľ vyberie toto tlačidlo a zdroj údajov je aktualizovaný, hodnoty vo formulári sa obnovia na predvolené hodnoty zdroja údajov.

Uloží zmeny

Ak vytvoríte tlačidlo Uložiť zmeny, tak ako je to popísane v predchádzajúcej časti, používateľ bude môcť vytvoriť alebo aktualizovať záznam a potom bude môcť použitím tohto tlačidla uložiť tieto zmeny do zdroja údajov. Aby ste dosiahli rovnaký výsledok, môžete namiesto toho nakonfigurovať ovládací prvok Image alebo iný ovládací prvok, avšak musíte mať tento ovládací prvok nakonfigurovaný pomocou funkcie SubmitForm. O výsledku poskytujú spätnú väzbu vlastnosti Error, ErrorKind, OnSuccess a OnFailure.

Keď sa spustí funkcia SubmitForm, najprv overí údaje, ktoré chce používateľ odoslať. Ak povinné pole neobsahuje hodnotu alebo nejaká hodnota nie je v súlade s obmedzením, nastavia sa vlastnosti ErrorKind a spustí sa vzorec OnFailure. Tlačidlo Uložiť zmeny alebo iný ovládací prvok môžete nakonfigurovať tak, že používateľ si ho bude môcť zvoliť iba vtedy, keď budú údaje platné (vtedy, keď bude mať vlastnosť formulára Valid hodnotu Pravda). Používateľ musí opraviť tieto chyby a potom vybrať tlačidloUložiť zmeny (alebo zahodiť zmeny výberom tlačidla Zrušiť, tak ako je to popísané vyššie), aby vyresetoval vlastnosti Error a ErrorKind.

Ak sú údaje úspešne overené, metóda SubmitForm ich odošle do zdroja údajov, čo však môže, v závislosti od časového oneskorenia siete, chvíľu trvať.

  • Ak je odoslanie úspešné, vlastnosť Error sa vymaže, vlastnosť ErrorKind sa nastaví na ErrorKind.None a spustí sa vzorec OnSuccess. Ak používateľ vytvoril záznam (t. j. ak bol formulár predtým v režime Nový), formulár sa prepne do režimu Upraviť a používateľ bude môcť tento (prípadne iný) záznam upravovať.
  • Ak odoslanie zlyhá, vlastnosť Error zobrazí jednoduché chybové hlásenie zo zdroja údajov vysvetľujúce podstatu problému. V závislosti od problému sa nastaví vlastnosť ErrorKind a spustí sa vzorec OnFailure.

Niektoré zdroje údajov rozoznajú, keď sa dvaja ľudia pokúšajú v rovnakom čase aktualizovať rovnaký záznam. V tom prípade sa vlastnosť ErrorKind nastaví na ErrorKind.Conflict a riešením je obnoviť zdroj údajov so zmenami druhého používateľa a potom znova použiť zmeny vykonané týmto používateľom.

Prepitné

Ak je súčasťou vášho formulára aj tlačidlo Cancel, ktorým môže používateľ prerušiť vykonávané zmeny, pridajte do vlastnosti tlačidla OnSelect aj funkciu ResetForm aj napriek tomu, že táto vlastnosť už obsahuje funkciu Navigate pre zmenu obrazovky. Inak by formulár stále obsahoval zmeny vykonané používateľom.

Rozloženie

V predvolenom nastavení sa v prípade aplikácií pre telefón karty umiestňujú do jedného stĺpca a v prípade aplikácií pre tablet do troch stĺpcov. Pri konfigurácii formulára môžete určiť počet stĺpcov a či sa k nim majú karty prichytiť. Tieto nastavenia nie sú samostatnými vlastnosťami, slúžia iba na nastavenie vlastností kariet X, Y a Width.

Ďalšie informácie nájdete v článku Princípy rozloženia údajových formulárov.

Základné vlastnosti

DataSource – Zdroj údajov obsahujúci záznam, ktorý používateľ zobrazí, upraví alebo vytvorí.

  • Ak túto vlastnosť nenastavíte, používateľ nebude môcť zobraziť, upraviť alebo vytvoriť záznam a nebudú k dispozícii žiadne metaúdaje ani overovanie.

DefaultMode – počiatočný režim ovládacieho prvku formulára. Prijateľné hodnoty a ich vysvetlenie nájdete nižšie v popise vlastnosti Mode.

DisplayMode – režim pre údajové karty a ovládacie prvky v ovládacom prvku formulára.

Sú odvodené od vlastnosti Mode a nemôžu byť nastavené nezávisle:

Režim DisplayMode Popis
FormMode.Edit DisplayMode.Edit Údajové karty a ovládacie prvky sa dajú upravovať, je možné urobiť zmeny v zázname.
FormMode.New DisplayMode.Edit Údajové karty a ovládacie prvky sa dajú upravovať, je možné vytvoriť nový záznam.
FormMode.View DisplayMode.View Údajové karty a ovládacie prvky sa nedajú upravovať, sú optimalizované na zobrazenie.

Error – Jednoduché chybové hlásenie, ktoré sa pre tento formulár zobrazí, keď zlyhá funkcia SubmitForm.

  • Táto vlastnosť sa týka iba ovládacieho prvku Formulár na úpravy.
  • Táto vlastnosť sa zmení iba vtedy, keď sú spustené funkcie SubmitForm, EditForm alebo ResetForm.
  • Ak sa nevyskytne žiadna chyba, táto vlastnosť zostane prázdna a ErrorKind sa nastaví na ErrorKind.None.
  • Ak je to možné, bude vrátené chybové hlásenie v jazyku používateľa. Niektoré chybové hlásenia pochádzajú priamo zo zdroja údajov a nemusia byť v jazyku používateľa.

ErrorKind – typ chyby, ktorá sa vyskytne vtedy, keď je spustená funkcia SubmitForm.

  • Týka sa iba ovládacieho prvku Formulár na úpravy.
  • Táto funkcia má rovnakú enumeráciu ako funkcia Errors. Ovládací prvok Formulár na úpravy môže vrátiť tieto hodnoty:
ErrorKind Popis
ErrorKind.Conflict Iný používateľ zmenil rovnaký záznam a výsledkom je konflikt zmien. Pomocou funkcie Refresh opäť načítajte záznam a skúste zmenu urobiť znova.
ErrorKind.None Chyba je neznámeho typu.
ErrorKind.Sync Zdroj údajov ohlásil chybu. Viac informácií obsahuje vlastnosť Error.
ErrorKind.Validation Zistil sa problém so všeobecným overením.

Item – záznam v DataSource, ktorý chce používateľ zobraziť alebo upraviť.

LastSubmit – posledný úspešne odoslaný záznam vrátane všetkých polí generovaných serverom.

  • Táto vlastnosť sa týka iba ovládacieho prvku Formulár na úpravy.
  • Ak zdroj údajov automaticky generuje alebo vypočítava niektoré pole, ako je napríklad pole ID s jedinečným číslom, vlastnosť LastSubmit bude mať túto novú hodnotu až po úspešnom spustení funkcie SubmitForm.
  • Hodnota tejto vlastnosti je k dispozícii vo vzorci OnSuccess.

Mode – ovládací prvok je v režime Edit alebo New.

Režim Popis
FormMode.Edit Používateľ môže pomocou formulára upraviť záznam. Hodnoty na kartách vo formulári sú vopred vyplnené hodnotami z existujúceho záznamu a používateľ ich môže zmeniť. Ak sa funkcia SubmitForm úspešne spustí, existujúci záznam sa upraví.
FormMode.New Používateľ môže pomocou formulára vytvoriť záznam. Hodnoty v ovládacích prvkoch formulára sú vopred vyplnené predvolenými hodnotami pre záznam zo zdroja údajov. Ak sa funkcia SubmitForm úspešne spustí, vytvorí sa záznam.
FormMode.View Používateľ môže pomocou formulára zobraziť záznam. Hodnoty v ovládacích prvkoch formulára sú vopred vyplnené predvolenými hodnotami pre záznam zo zdroja údajov.

Formulár sa prepne z režimu New na režim Edit vtedy, ak dôjde k jednej z nasledujúcich zmien:

  • Formulár sa úspešne odošle a vytvorí sa záznam. Ak je Galéria nastavená tak, aby automaticky premiestnila výber do tohto nového záznamu, formulár bude pre vytvorený záznam v režime Edit, takže používateľ bude môcť vykonať ďalšie prípadné zmeny.
  • Spustí sa funkcia EditForm.
  • Spustí sa funkcia ResetForm. Používateľ môže napríklad vybrať tlačidlo Cancel, pre ktoré bola táto funkcia nakonfigurovaná.

OnFailure – Akcie, ktoré sa majú vykonať, keď bola dátová operácia neúspešná.

  • Táto vlastnosť sa týka iba ovládacieho prvku Formulár na úpravy.

OnReset – Akcie, ktoré sa majú vykonať, keď sa resetuje ovládací prvok Upraviť formulár.

  • Táto vlastnosť sa týka iba ovládacieho prvku Formulár na úpravy.

OnSuccess – Akcie, ktoré sa majú vykonať, keď bola dátová operácia úspešná.

  • Táto vlastnosť sa týka iba ovládacieho prvku Formulár na úpravy.

Unsaved – má hodnotu pravda, ak ovládací prvok Formulár na úpravy obsahuje zmeny vykonané používateľom, ktoré neboli uložené.

  • Táto vlastnosť sa týka iba ovládacieho prvku Formulár na úpravy.
  • Pomocou tejto vlastnosti môžete upozorniť používateľa na to, že neuložené zmeny môže stratiť. Aby ste predišli tomu, že používateľ si v ovládacom prvku Gallery vyberie iný záznam predtým ako uloží aktuálny, nastavte vlastnosť Galérie Disabled na Form.Unsaved, aby ste tak zabránili operáciám obnovenia.

Updates – hodnoty, ktoré chcete zapísať späť do zdroja údajov pre záznam načítaný do ovládacieho prvku formulára.

  • Táto vlastnosť sa týka iba ovládacieho prvku Formulár na úpravy.
  • Túto vlastnosť použite na extrahovanie hodnôt polí z kariet v ovládacom prvku. Tieto hodnoty môžete potom použiť na manuálnu aktualizáciu zdroja údajov pomocou volania funkcie Patch alebo pomocou inej metódy vystavenej pripojením. Túto vlastnosť však nemusíte použiť, ak používate funkciu SubmitForm.
  • Táto vlastnosť vráti záznam hodnôt. Ak napríklad ovládací prvok formulára obsahuje ovládacie prvky karty pre polia Name a Quantity a hodnoty vlastnosti Update pre tieto karty vrátia hodnoty "Widget" a 10 (v uvedenom poradí), potom vlastnosť pre ovládací prvok formulára Updates vráti {Name: „Widget“, Quantity: 10 }.

Valid – určuje, či ovládací prvok Card alebo Formulár na úpravy obsahuje platné položky pripravené na odoslanie do zdroja údajov.

  • Táto vlastnosť sa týka iba ovládacieho prvku Formulár na úpravy.

  • Vlastnosť Valid ovládacieho prvku Formulár agreguje vlastnosti Valid všetkých ovládacích prvkov Card vo formulári. Vlastnosť formulára Valid má hodnotu pravda iba vtedy, ak sú údaje na všetkých kartách v tomto formulári platné, v opačnom prípade má vlastnosť Valid hodnotu nepravda.

  • Ak chcete povoliť tlačidlo na uloženie zmien iba v prípade, že sú údaje platné, ale neboli ešte odoslané, nastavte vlastnosť tlačidla DisplayMode na tento vzorec:

    SubmitButton.DisplayMode = If(IsBlank( Form.Error ) || Form.Valid, DisplayMode.Edit, DisplayMode.Disabled)

Ďalšie vlastnosti

BorderColor – farba orámovania ovládacieho prvku.

BorderStyle – štýl orámovania ovládacieho prvku Solid (Plné), Dashed (Prerušované), Dotted (Bodkované) alebo None (Žiadne).

BorderThickness – hrúbka orámovania ovládacieho prvku.

Fill – farba pozadia ovládacieho prvku.

Height – vzdialenosť medzi horným a dolným okrajom ovládacieho prvku.

Visible – možnosť zobrazenia alebo skrytia ovládacieho prvku.

Width – vzdialenosť medzi ľavým a pravým okrajom ovládacieho prvku.

X – vzdialenosť medzi ľavým okrajom ovládacieho prvku a ľavým okrajom jeho nadradeného kontajnera (alebo obrazovky, ak sa nadradený kontajner nepoužíva).

Y – vzdialenosť medzi horným okrajom ovládacieho prvku a horným okrajom jeho nadriadeného kontajnera (alebo obrazovky, ak sa nadradený kontajner nepoužíva).

Viac informácií

Pokyny na zjednodušenie ovládania

Podpora čítača obrazovky

  • Zvážte pridanie nadpisu do formulára pomocou vlastnosti Label.

Poznámka

Môžete nás informovať o svojich voľbách jazyka pre dokumentáciu? Absolvujte krátky prieskum. (upozorňujeme, že tento prieskum je v angličtine)

Prieskum bude trvať približne sedem minút. Nezhromažďujú sa žiadne osobné údaje (vyhlásenie o používaní osobných údajov).