Funkce EditForm, NewForm, SubmitForm, ResetForm a ViewForm
Platí pro: aplikace Canvas
Slouží k zobrazení, úpravám a vytváření položek, ukládání obsahu a resetování ovládacích prvků v ovládacím prvku Edit form.
Přehled
Tyto funkce změní stav ovládacího prvku Edit form. Ovládací prvek Form může být v jednom z těchto režimů:
Režim | Popis |
---|---|
FormMode.Edit | Formulář se naplní existujícím záznamem a uživatel může upravit hodnoty polí. Po dokončení může uživatel uložit změny záznamu. |
FormMode.New | Formulář se naplní výchozími hodnotami a uživatel může upravit hodnoty polí. Po dokončení může uživatel přidat záznam do zdroje dat. |
FormMode.View | Formulář se naplní existujícím záznamem, ale uživatel nemůže upravovat hodnoty polí. |
Popis
Tyto funkce se často volají ze vzorce OnSelect ovládacího prvku Button nebo Image, aby uživatel mohl ukládat a zahodit úpravy nebo vytvořit záznam. Ovládací prvky můžete použít společně s těmito funkcemi a vytvořit tak kompletní řešení.
Tyto funkce nevrací žádnou hodnotu.
Tyto funkce se dají použít jenom ve vzorcích chování.
SubmitForm
Funkce SubmitForm ve vlastnosti OnSelect ovládacího prvku Button slouží k ukládání veškerých změn v ovládacím prvku Form do zdroje dat.
Před odesláním jakýchkoli změn tato funkce zkontroluje problémy s ověřením u všech polí, která jsou označena jako povinná nebo jejichž hodnota má nastaveno nějaké omezení. Toto chování se shoduje s chováním funkce Validate.
SubmitForm také kontroluje Platnou vlastnost formuláře, která je agregací všech Platných vlastnosti ovládacích prvků karta , které ovládací prvek Formulář obsahuje. Pokud dojde k problému, data se neodešlou a vlastnosti Error a ErrorKind ovládacího prvku Form se nastaví odpovídajícím způsobem.
V případě úspěšného ověření funkce SubmitForm odešle změnu do zdroje dat.
- V případě úspěchu se u ovládacího prvku Form spustí akce OnSuccess a vlastnosti Error a ErrorKind se vymažou. Pokud byl formulář v režimu FormMode.New, vrátí se zpět do režimu FormMode.Edit.
- V případě neúspěchu se u ovládacího prvku Formulář spustí akce OnFailure a vlastnosti Error a ErrorKind se nastaví odpovídajícím způsobem. Režim formuláře zůstane beze změny.
EditForm
Funkce EditForm změní režim ovládacího prvku Form na FormMode.Edit. V tomto režimu obsah vlastnosti Item ovládacího prvku Form slouží k naplnění formuláře. Pokud se spustí funkce SubmitForm u formuláře v tomto režimu, záznam se nevytvoří, ale změní. FormMode.Edit je výchozí pro ovládací prvek Form.
Poznámka:
Když je formulář v režim úprav a položka má hodnotu null, vlastnosti datové karty se nevyhodnocují a vrátí výchozí hodnoty.
NewForm
Funkce NewForm změní režim ovládacího prvku Form na FormMode.New. V tomto režimu se obsah vlastnosti Item ovládacího prvku Form ignoruje a formulář se naplní výchozími hodnotami vlastnosti DataSource ovládacího prvku Form. Pokud se spustí funkce SubmitForm u formuláře v tomto režimu, záznam se nezmění, ale vytvoří.
ResetForm
Dříve, než uživatele provede změny, funkce ResetForm zresetuje obsah formuláře na původní hodnoty. Pokud je formulář v režimu FormMode.New, resetuje se na režim FormMode.Edit. Spustí se také akce OnReset ovládacího prvku formuláře. Pomocí funkce Reset můžete resetovat také jednotlivé ovládací prvky, ale jenom v rámci formuláře.
ViewForm
Funkce ViewForm změní režim ovládacího prvku Form na FormMode.View. V tomto režimu obsah vlastnosti Item ovládacího prvku Form slouží k naplnění formuláře. V tomto režimu nemají funkce SubmitForm a ResetForm žádný vliv.
Vlastnost DisplayMode
Aktuální režim lze číst prostřednictvím vlastnosti Mode. Tento režim také určuje hodnotu vlastnosti DisplayMode, kterou mohou používat datové karty a ovládací prvky v rámci ovládacího prvku formuláře. Vlastnost DisplayMode datové karty se často nastaví na Parent.DisplayMode (odkazující na formulář) stejně jako vlastnost DisplayMode ovládacího prvku (odkazující na datovou kartu):
Režim | DisplayMode | Popis |
---|---|---|
FormMode.Edit | DisplayMode.Edit | Datové karty a ovládací prvky lze upravovat, umožňuje provádět změny v záznamu. |
FormMode.New | DisplayMode.Edit | Datové karty a ovládací prvky lze upravovat, umožňuje vytvořit nový záznam. |
FormMode.View | DisplayMode.View | Datové karty a ovládací prvky nelze upravovat, optimalizováno pro prohlížení. |
Syntaxe
OdeslatFormulář( Název formuláře )
- FormName – povinné. Ovládací prvek Form pro odeslání do zdroje dat.
EditForm( FormName )
- FormName – povinné. Ovládací prvek Form pro přepnutí do režimu FormMode.Edit.
NovýFormulář( Název formuláře )
- FormName – povinné. Ovládací prvek Form pro přepnutí do režimu FormMode.New.
ResetForm( FormName )
- FormName – povinné. Ovládací prvek Form pro resetování na počáteční hodnoty. Také přepíná formulář z režimu FormMode.New do režimu FormMode.Edit.
ZobrazitFormulář( Název formuláře )
- FormName – povinné. Ovládací prvek Form pro přepnutí do režimu FormMode.View.
Příklady
Kompletní příklady najdete v článku Principy datových formulářů.
Přidejte ovládací prvek Button, nastavte jeho vlastnost Text na Save a vlastnost OnSelect nastavte na tento vzorec:
SubmitForm (EditForm)
Nastavte vlastnost OnFailure ovládacího prvku Form na prázdnou hodnotu a jeho vlastnost OnSuccess na tento vzorec:
Zadní()
Pojmenujte ovládací prvek Label jako ErrorText a nastavte jeho vlastnost Text na tento vzorec:
EditForm.Error
Když uživatel vybere tlačítko Save, všechny změny v ovládacím prvku Form se pošlou do podkladového zdroje dat.
- Pokud se odeslání podaří, všechny změny se uloží nebo v případě, že je ovládací prvek Form v režimu New, vytvoří se záznam. ErrorText je prázdný a znovu se objeví předchozí obrazovka.
- Pokud se odeslání nezdaří, ErrorText zobrazí uživatelsky přívětivou chybovou zprávu a aktuální obrazovka zůstane zobrazená, aby uživatel mohl opravit problém a akci opakovat.
Přidejte ovládací prvek Button, nastavte jeho vlastnost Text na Cancel a vlastnost OnSelect nastavte na tento vzorec:
ResetForm( EditForm); Zadní()
Když uživatel vybere tlačítko Cancel, hodnoty v ovládacím prvku Form se resetují na hodnoty, které ovládací prvek obsahoval předtím, než uživatel začal s úpravami. Znovu se objeví předchozí obrazovka a ovládací prvek Form se vrátí do režimu Edit v případě, že byl v režimu New.
Přidejte ovládací prvek Button, nastavte jeho vlastnost Text na New a nastavte vlastnost OnSelect na tento vzorec:
NovýFormulář( EditForm ); Navigovat (EditScreen, None)
Když uživatel vyberte tlačítko New, ovládací prvek Form se přepne do režimu New a naplní se výchozími hodnotami ze zdroje dat a zobrazí se obrazovka obsahující tento ovládací prvek. Při spuštění funkce SubmitForm se záznam neaktualizuje, ale vytvoří se nový.