Ovládací prvky Formulář pro zobrazení a Formulář pro úpravy v PowerAppsEdit form and Display form controls in PowerApps

Zobrazení, úpravy a vytváření záznamu ve zdroji datDisplay, edit, and create a record in a data source.

PopisDescription

Pokud přidáte ovládací prvek Formulář pro zobrazení, může uživatel zobrazit všechna pole záznamu, nebo pouze pole, které zadáte.If you add a Display form control, the user can display all fields of a record or only the fields that you specify. Pokud přidáte ovládací prvek Formulář pro úpravy, uživatel bude moct tato pole upravovat, vytvořit záznam a změny uložit do zdroje dat.If you add an Edit form control, the user can edit those fields, create a record, and save those changes to a data source.

Ukázkový formulář a ovládací prvky formulářového zobrazení

Pokud přidáte ovládací prvek Galerie, můžete ho nakonfigurovat tak, aby zobrazil tabulku ve zdroji dat, a pak nastavit formulář tak, aby zobrazil záznam, který uživatel v galerii vybral.If you add a Gallery control, you can configure it to show a table in a data source and then configure a form to show whichever record the user selects in the gallery. Můžete také přidat ovládací prvky Tlačítko, které budou uživateli sloužit k uložení úprav, zrušení úprav a k vytvoření záznamu.You can also add one or more Button controls that the user can select to save edits, cancel edits, and create a record. Použitím všech těchto ovládacích prvků můžete vytvořit kompletní řešení.By using controls together, you can create a complete solution.

Výběr záznamuRecord selection

Pro oba typy formulářů nastavte vlastnost ZdrojDat na tabulku záznamů a vlastnost formuláře Items nastavena tak, aby zobrazovala konkrétní záznam v této tabulce.For either type of form, you set its DataSource property to a table of records, and you set the form's Item property to show a specific record in that table. Vlastnost formuláře Items můžete například nastavit na vlastnost SelectedItem ovládacího prvku Galerie.For example, you can set the Item property of a form to the SelectedItem property of a Gallery control. Když uživatel vybere záznam v galerii, zobrazí se stejný záznam ve formuláři. Formulář ale může zobrazit více polí.When the user selects a record in the gallery, the same record appears in the form, except that the form can show more fields. Když se uživatel vrátí do galerie a vybere jiný záznam, vlastnost galerie SelectedItem se změní.If the user returns to the gallery and selects a different record, the SelectedItem property of the gallery changes. Tato změna aktualizuje vlastnost formuláře Item, která zobrazí nově vybraný záznam.This change updates the Item property of the form, which then shows the newly selected record.

Každý ovládací prvek formuláře obsahuje jeden nebo více ovládacích prvků Karta.Each form control contains one or more Card controls. Nastavením vlastnosti karty DataField určíte, které pole bude karta zobrazovat, a další podrobnosti.By setting the DataField property of a card, you specify which field that card shows and other details.

Vytvoření záznamuCreate a record

Když je ovládací prvek Formulář pro úpravy v režimu Edit, může uživatel upravovat záznam, který je uvedený ve vlastnosti formuláře Item.When an Edit form control is in Edit mode, the user can update the record that's specified in the form's Item property. Při kontrole vrátí vlastnost Mode hodnotu Edit.If inspected, the Mode property returns Edit.

Pokud je ale ovládací prvek Formulář pro úpravy v režimu New, vlastnost Item je ignorována.When an Edit form control is in New mode, however, the Item property is ignored. Formulář nezobrazí existující záznam. Místo toho budou hodnoty v jednotlivých polích odpovídat výchozím hodnotám ve zdroji dat, se kterými jste formulář nakonfigurovali.The form doesn't show an existing record; instead, the values in each field match the default values of the data source with which you configured the form. Funkce NewForm způsobí, že se formulář přepne do tohoto režimu.The NewForm function causes a form to switch to this mode.

Můžete třeba nastavit vlastnost tlačítka Text na New a vlastnost OnSelect na vzorec, který zahrnuje funkci NewForm.For example, you can set the Text property of a button to show New and its OnSelect property to a formula that includes the NewForm function. Když uživatel vybere toto tlačítko, formulář se přepne do režimu New a uživatel bude moct vytvořit záznam, kde budou předvyplněné známé hodnoty.If the user selects that button, the form switches to New mode so that the user can create a record starting with known values.

Formulář se přepne zpět do režimu Edit, pokud se spustí úspěšně buď funkce ResetForm, nebo funkce SubmitForm.A form switches back to Edit mode if either the ResetForm function runs or the SubmitForm function runs successfully.

  • Můžete nastavit vlastnost tlačítka Text na Cancel (Zrušit) a vlastnost OnSelect na vzorec, který zahrnuje funkci ResetForm.You can set the Text property of a button to show Cancel and its OnSelect property to a formula that includes the ResetForm function. Když uživatel vybere toto tlačítko, všechny změny se zahodí a hodnoty ve formuláři budou znovu odpovídat výchozím hodnotám ve zdroji dat.If the user selects that button, any changes in progress are discarded, and the values in the form, once again, match the default values of the data source.
  • Můžete nastavit vlastnost tlačítka Text na Save changes (Uložit změny) a vlastnost OnSelect na vzorec, který zahrnuje funkci SubmitForm.You can set the Text property of a button to show Save changes and its OnSelect property to a formula that includes the SubmitForm function. Když uživatel vybere toto tlačítko, zdroj dat se aktualizuje a ve formuláři se obnoví výchozí hodnoty zdroje dat.If the user selects that button and the data source is updated, the values in the form are reset to the default values of the data source.

Uložení změnSave changes

Když podle výše uvedeného postupu vytvoříte tlačítko Save changes, uživatel bude moct vytvořit nebo aktualizovat záznam a výběrem tohoto tlačítka tyto změny uložit do zdroje dat.If you create a Save changes button as the previous section describes, the user can create or update a record and then select that button to save those changes to the data source. K provedení této akce ale můžete nakonfigurovat i jiný ovládací prvek, například Obrázek. Stačí, když bude mít nakonfigurovanou funkci SubmitForm.You could, instead, configure an Image control or some other control to perform the same task, as long as you configure that control with the SubmitForm function. Pokud by se vyskytl problém, můžete chybu odhalit pomocí vlastností Error, ErrorKind, OnSuccess a OnFailure.In any case, the Error, ErrorKind, OnSuccess, and OnFailure properties provide feedback on the outcome.

Po spuštění funkce SubmitForm dojde nejprve k ověření dat, která chce uživatel odeslat.When the SubmitForm function runs, it first validates the data that user wants to submit. Pokud chybí hodnota pro povinné pole nebo některé zadání nevyhovuje omezením, nastaví se vlastnosti ErrorKind a spustí se vzorec OnFailure.If a required field doesn't contain a value or another value doesn't conform to some other constraint, the ErrorKind properties are set, and the OnFailure formula runs. Tlačítko Save changes nebo jiný ovládací prvek můžete nakonfigurovat tak, aby ho mohl uživatel vybrat pouze v případě, že jsou všechna data platná (tedy když má vlastnost formuláře Valid hodnotu true).You can configure the Save changes button or other control so that the user can select it only if the data is valid (that is, if the Valid property of the form is true). Uživatel musí opravit chyby ve formuláři a potom znovu vybrat tlačítko Save changes, nebo zahodit změny zvolením tlačítka Cancel (toto tlačítko je popsáno výše). Tím se resetují vlastnosti Error a ErrorKind.Note that the user must not only correct the problem but also select the Save changes button again (or discard the changes by selecting a Cancel button, as described earlier) to reset the Error and ErrorKind properties.

Když data úspěšně projdou ověřením, metoda SubmitForm je odešle do zdroje dat. To může chvíli trvat v závislosti na latenci sítě.If the data passes validation, SubmitForm sends it to the data source, which can take some time depending on network latency.

  • Pokud odeslání proběhne úspěšně, vlastnost Error se vymaže, vlastnost ErrorKind se nastaví na ErrorKind.None a spustí se vzorec OnSuccess.If the submission succeeds, the Error property is cleared, the ErrorKind property is set to ErrorKind.None, and the OnSuccess formula runs. Pokud uživatel vytvořil záznam (tj. formulář byl v režimu New), přepne se režim formuláře na Edit a uživatel bude moct tento nebo jiný záznam upravit.If the user created a record (that is, if the form was previously in New mode), the form is switched to Edit mode so that the user can edit the newly created record or a different one.
  • Pokud odesílání selže, vlastnost Error zobrazí popisnou chybovou zprávu ze zdroje dat s vysvětlením problému.If the submission fails, the Error property contains a user-friendly error message from the data source, explaining the problem. V závislosti na problému se nastaví vlastnost ErrorKind a spustí se vzorec OnFailure.The ErrorKind property is set appropriately, depending on the issue, and the OnFailure formula runs.

Některé zdroje dat poznají, když se dva uživatelé pokoušejí aktualizovat současně stejný záznam. V takovém případě se vlastnost ErrorKind nastaví na ErrorKind.Conflict a řešením je aktualizovat zdroj dat změnami druhého uživatele a potom znovu odeslat změny provedené tímto uživatelem.Some data sources can detect when two people try to update the same record at the same time In this case, ErrorKind is set to ErrorKind.Conflict, and the remedy is to refresh the data source with the other user's changes and reapply the change made by this user.

Tip: Pokud na formulář umístíte tlačítko Cancel, aby mohl uživatel zahodit prováděné změny, přidejte k vlastnosti tlačítka OnSelect funkci ResetForm, i když tato vlastnost už obsahuje funkci Navigate pro změnu obrazovky.Tip: If you offer a Cancel button on your form so that the user can abandon changes in progress, add the ResetForm function to the button's OnSelect property even that property also contains a Navigate function to change screens. Bez přidání této funkce by formulář stále obsahoval změny uživatele.Otherwise, the form will retain the user's changes.

RozloženíLayout

Ve výchozím nastavení se karty umísťují v případě telefonních aplikací do jednoho sloupce a v případě aplikací pro tablet do tří sloupců.By default, cards are placed in a single column for phone apps and three columns for tablet apps. Při konfiguraci formuláře můžete určit počet sloupců a zda se k nim karty mají přichytit.You can specify how many columns a form has and whether cards should snap to them as you configure the form. Tato nastavení nejsou samostatnými vlastnostmi, slouží pouze k nastavení vlastností karet X, Y a Width.These settings aren't exposed as properties because they're used only to set the X, Y, and Width properties of the cards.

Další informace najdete v tématu Principy rozložení datových formulářů.For more information, see Understand data form layout.

Základní vlastnostiKey properties

ZdrojDat – zdroj dat obsahující záznam, který chce uživatel zobrazit, upravit nebo vytvořitDataSource – The data source that contains the record that the user will show, edit, or create.

  • Pokud tuto vlastnost nenastavíte, uživatel nebude moct zobrazit, upravit ani vytvořit záznam a nebudou k dispozici žádné další metadata ani ověření.If you don't set this property, the user can't show, edit, or create a record, and no additional metadata or validation is provided.

DefaultMode – počáteční režim ovládacího prvku formuláře.DefaultMode - The initial mode of the form control. Povolené hodnoty a jejich vysvětlení najdete níže v popisu vlastnosti Mode.See the description of Mode below for the acceptable values and their meanings.

DisplayMode – režim, který se použije pro datové karty a ovládací prvky v ovládacím prvku formulářeDisplayMode - The mode to use for data cards and controls within the form control.

Jsou odvozené od vlastnosti Mode a nelze je nastavovat samostatně:Derived from the Mode property based and cannot be set independently:

ModeMode DisplayModeDisplayMode PopisDescription
FormMode.EditFormMode.Edit DisplayMode.EditDisplayMode.Edit Datové karty a ovládací prvky lze upravovat, umožňuje provádět změny v záznamu.Data cards and controls are editable, ready to accept changes to a record.
FormMode.NewFormMode.New DisplayMode.EditDisplayMode.Edit Datové karty a ovládací prvky lze upravovat, umožňuje vytvořit nový záznam.Data cards and controls are editable, ready to accept a new record.
FormMode.ViewFormMode.View DisplayMode.ViewDisplayMode.View Datové karty a ovládací prvky nelze upravovat, optimalizováno pro prohlížení.Data cards and controls are not editable and optimized for viewing.

Error – popisná chybová zpráva, která se zobrazí pro tento formulář, když selže funkce SubmitForm.Error – A user friendly error message to display for this form when the SubmitForm function fails.

  • Tato vlastnost se vztahuje pouze na ovládací prvek Formulář pro úpravy.This property applies only to the Edit form control.
  • Tato vlastnost se změní pouze při spuštění funkce SubmitForm, EditForm nebo ResetForm.This property changes only when the SubmitForm, EditForm, or ResetForm function runs.
  • Pokud nenastane žádná chyba, zůstane tato vlastnost prázdná a ErrorKind se nastaví na ErrorKind.None.If no error occurs, this property is blank, and ErrorKind is set to ErrorKind.None.
  • Vrácená chybová zpráva bude pokud možno v jazyce uživatele.When possible, the error message returned will be in the user's language. Některé chybové zprávy pocházejí přímo ze zdroje dat a v jazyce uživatele být nemusí.Some error messages come from the data source directly and may not be in the user's language.

ErrorKind – typ chyby, pokud při spuštění funkce SubmitForm k nějaké chybě došloErrorKind – If an error occurs when SubmitForm runs, the kind of error that occurred.

  • Vztahuje se pouze na ovládací prvek Formulář pro úpravy.Applies only to an Edit form control.
  • Tato vlastnost má stejný výčet jako funkce Errors.This property has the same enumeration as the Errors function. Ovládací prvek Formulář pro úpravy může vracet tyto hodnoty:An Edit form control can return these values:
ErrorKindErrorKind PopisDescription
ErrorKind.ConflictErrorKind.Conflict Jiný uživatel změnil stejný záznam a výsledkem je konflikt změn.Another user changed the same record, resulting in a change conflict. Spuštěním funkce Refresh znovu načtěte záznam a zkuste změnu provést znovu.Execute the Refresh function to reload the record, and try the change again.
ErrorKind.NoneErrorKind.None Chyba je neznámého typu.The error is of an unknown kind.
ErrorKind.SyncErrorKind.Sync Zdroj dat ohlásil chybu.The data source reported an error. Další informace obsahuje vlastnost Error.Check the Error property for more information.
ErrorKind.ValidationErrorKind.Validation Byla zjištěna obecná chyba ověření.A general validation issue was detected.

Item – záznam ve vlastnosti ZdrojDat, který chce uživatel zobrazit nebo upravitItem – The record in the DataSource that the user will show or edit.

LastSubmit – poslední úspěšně odeslaný záznam, včetně všech polí generovaných serveremLastSubmit – The last successfully submitted record, including any server generated fields.

  • Tato vlastnost se vztahuje pouze na ovládací prvek Formulář pro úpravy.This property applies only to the Edit form control.
  • Pokud zdroj dat automaticky generuje nebo vypočítává některá pole, například pole ID s jedinečným číslem, bude mít vlastnost LastSubmit po úspěšném spuštění funkce SubmitForm tuto novou hodnotu.If the data source automatically generates or calculates any fields, such as an ID field with a unique number, the LastSubmit property will have this new value after SubmitForm successfully runs.
  • Hodnota této vlastnosti je k dispozici ve vzorci OnSuccess.The value of this property is available in the OnSuccess formula.

Mode – ovládací prvek je v režimu Edit nebo New.Mode – The control is in Edit or New mode.

ModeMode PopisDescription
FormMode.EditFormMode.Edit Uživatel může pomocí formuláře upravit záznam.The user can edit a record by using the form. Hodnoty na kartách ve formuláři jsou předvyplněné z existujícího záznamu a uživatel je může změnit.The values in the form's cards are pre-populated with the existing record, for the user to change. Pokud funkce SubmitForm proběhne úspěšně, existující záznam se aktualizuje.If the SubmitForm function runs successfully, an existing record is modified.
FormMode.NewFormMode.New Uživatel může pomocí formuláře vytvořit záznam.The user can create a record by using the form. Hodnoty v ovládacích prvcích ve formuláři se předvyplní výchozími hodnotami pro záznam ze zdroje dat.The values in the form's controls are pre-popoulated with the defaults for a record of the data source. Pokud funkce SubmitForm proběhne úspěšně, vytvoří se záznam.If the SubmitForm function runs successfully, an record is created.
FormMode.ViewFormMode.View Uživatel může prostřednictvím formuláře zobrazit záznam.The user can view a record by using the form. Hodnoty v ovládacích prvcích ve formuláři se předvyplní výchozími hodnotami pro záznam ze zdroje dat.The values in the form's controls are pre-popoulated with the defaults for a record of the data source.

Formulář se přepne z režimu New do režimu Edit, pokud dojde k některé z těchto změn:The form switches from New mode to Edit mode when any of these changes occurs:

  • Formulář je úspěšně odeslán a je vytvořen záznam.The form is successfully submitted, and a record is created. Pokud je galerie nastavena tak, aby automaticky přesunula výběr do tohoto nového záznamu, bude formulář pro vytvořený záznam v režimu Edit, aby uživatel mohl provést další změny.If the gallery is set to automatically move selection to this new record, the form will be in Edit mode for the created record so that the user can make additional changes.
  • Spustí se funkce EditForm.The EditForm function runs.
  • Spustí se funkce ResetForm.The ResetForm function runs. Uživatel může například vybrat tlačítko Cancel, pro které byla tato funkce nakonfigurována.For example, the user might select a Cancel button that's been configured with this function.

OnFailure – způsob reakce aplikace v případě neúspěchu datové operaceOnFailure – How an app responds when a data operation has been unsuccessful.

  • Tato vlastnost se vztahuje pouze na ovládací prvek Formulář pro úpravy.This property applies only to the Edit form control.

OnReset – způsob reakce aplikace při resetování ovládacího prvku Formulář pro úpravyOnReset – How an app responds when an Edit form control is reset.

  • Tato vlastnost se vztahuje pouze na ovládací prvek Formulář pro úpravy.This property applies only to the Edit form control.

OnSuccess – způsob reakce aplikace v případě úspěchu datové operaceOnSuccess – How an app responds when a data operation has been successful.

  • Tato vlastnost se vztahuje pouze na ovládací prvek Formulář pro úpravy.This property applies only to the Edit form control.

Unsaved – má hodnotu true, pokud ovládací prvek Formulář pro úpravy obsahuje změny uživatele, které nebyly uloženyUnsaved – True if the Edit form control contains user changes that have not been saved.

  • Tato vlastnost se vztahuje pouze na ovládací prvek Formulář pro úpravy.This property applies only to the Edit form control.
  • Pomocí této vlastnosti můžete uživatele upozornit na neuložené změny, které by mohly být ztraceny.Use this property to warn the user before they lose any unsaved changes. Abyste předešli tomu, že uživatel v ovládacím prvku Galerie před uložením změn aktuálního záznamu vybere jiný záznam, nastavte vlastnost galerie Disabled na Form.Unsaved, abyste tak zabránili operacím obnovení.To prevent the user from selecting a different record in a Gallery control before saving changes to the current record, set the gallery's Disabled property to Form.Unsaved and, likewise, disable refresh operations.

Updates – hodnota pro zapsání zpět do zdroje dat pro záznam načtený do ovládacího prvku formulářeUpdates – The values to write back to the data source for a record loaded in a form control.

  • Tato vlastnost se vztahuje pouze na ovládací prvek Formulář pro úpravy.This property applies only to the Edit form control.
  • Tuto vlastnost použijte k extrahování hodnot polí z karet v ovládacím prvku.Use this property to extract the field values from the cards within the control. Tyto hodnoty pak můžete použít k ruční aktualizaci zdroje dat zavoláním funkce Patch nebo jiné metody vystavené připojením.You can then use these values to manually update the data source with a Patch function call or another method exposed by a connection. Tuto vlastnost nemusíte používat, pokud používáte funkci SubmitForm.You do not need to use this property if you are using the SubmitForm function.
  • Tato vlastnost vrátí záznam hodnot.This property returns a record of values. Pokud například ovládací prvek formuláře obsahuje ovládací prvky karet pro pole Name a Quantity a hodnoty vlastností Update pro tyto karty vrátí hodnoty „Widget“ a „10“, pak vlastnost Updates pro ovládací prvek formuláře vrátí hodnotu { Name: "Widget", Quantity: 10 }.For example, if the form control contains card controls for Name and Quantity fields, and the values of the Update properties for those cards return "Widget" and 10 respectively, then the Updates property for the form control would return { Name: "Widget", Quantity: 10 }.

Valid – určuje, zda ovládací prvek Karta nebo Formulář pro úpravy obsahuje platné položky připravené k odeslání do zdroje datValid – Whether a Card or Edit form control contains valid entries, ready to be submitted to the data source.

  • Tato vlastnost se vztahuje pouze na ovládací prvek Formulář pro úpravy.This property applies only to the Edit form control.
  • Vlastnost Valid ovládacího prvku Formulář agreguje vlastnosti Valid všech ovládacích prvků Karta ve formuláři.A Form control's Valid property aggregates the Valid properties of all the Card controls in the form. Vlastnost Valid formuláře má hodnotu true pouze v případě, že jsou data na všech kartách v tomto formuláři platná, v opačném případě má vlastnost formuláře Valid hodnotu false.A form's Valid property is true only if the data in all cards in that form is valid; otherwise, the form's Valid property is false.
  • Pokud chcete povolit tlačítko pro uložení změn pouze v případě, že jsou data ve formuláři platná, ale dosud nebyla odeslána, nastavte vlastnost tlačítka Enabled na tento vzorec:To enable a button to save changes only when the data in a form is valid but hasn't yet been submitted, set the button's Enabled to this formula:

    SubmitButton.Enabled = IsBlank( Form.Error ) || Form.ValidSubmitButton.Enabled = IsBlank( Form.Error ) || Form.Valid

Další vlastnostiAdditional properties

BorderColor – barva ohraničení ovládacího prvkuBorderColor – The color of a control's border.

BorderStyle – styl ohraničení ovládacího prvku Solid (Plné), Dashed (Čárkované), Dotted (Tečkované) nebo None (Žádné)BorderStyle – Whether a control's border is Solid, Dashed, Dotted, or None.

BorderThickness – tloušťka ohraničení ovládacího prvkuBorderThickness – The thickness of a control's border.

Fill – barva pozadí ovládacího prvkuFill – The background color of a control.

Height – vzdálenost mezi horním a dolním okrajem ovládacího prvkuHeight – The distance between a control's top and bottom edges.

Visible – možnost zobrazení nebo skrytí ovládacího prvkuVisible – Whether a control appears or is hidden.

Width – vzdálenost mezi levým a pravým okrajem ovládacího prvkuWidth – The distance between a control's left and right edges.

X – vzdálenost mezi levým okrajem ovládacího prvku a levým okrajem jeho nadřazeného kontejneru (nebo obrazovky, pokud se nadřazený kontejner nepoužívá)X – The distance between the left edge of a control and the left edge of its parent container (screen if no parent container).

Y – vzdálenost mezi horním okrajem ovládacího prvku a horním okrajem jeho nadřazeného kontejneru (nebo obrazovky, pokud se nadřazený kontejner nepoužívá)Y – The distance between the top edge of a control and the top edge of the parent container (screen if no parent container).

Další informaceMore information

Kompletní přehled fungování formulářů najdete v tématu Principy datových formulářů.For a comprehensive overview of how forms work, see Understand data forms.