Vlastní formátovače dosud umožňovaly přiřazovat text nebo obrázky k obsahu pole, například nahrazovat true/false obrázkem nebo 1, 2 textovými popisky. 4D v19 R3 umožňuje vytvářet akční vstupní ovládací prvky dostupné z akčních formulářů, jako je například vytvoření výběrového seznamu s předdefinovaným textem. A co víc, tento seznam lze dynamicky naplnit pomocí datového zdroje, například seznamu zaměstnavatelů. Pojďme se ponořit do podrobností!
PŘIPOMENUTÍ VLASTNÍCH FORMÁTOVAČŮ
Vlastní formátovače umožňují pracovat s výčty pomocí jednoduchého souboru JSON a zobrazovat odpovídající hodnoty v závislosti na hodnotách z databáze.
Zde je příklad souboru manifest.json :
{ "name": "integerToString", "type": [ "integer" ], "binding": "localizedText", "choiceList": { "0":"To Do", "1":"In Progress", "2":"Done" } }
Tento jednoduchý soubor JSON umožňuje převést celá čísla na řetězce, které se zobrazí v aplikaci pro iOS. Můžete však také vytvořit a používat tyto typy formátovačů pro zobrazení obrázků, celých čísel, emotikonů…
Jejich vhozením do určité složky „formatters“ je můžete přiřadit například textovému poli a získat takový výsledek:
Hodnoty stavových polí „To Do“, „In Progress “ a „Done “ v dolní části obrazovky se správně zobrazí podle celočíselné hodnoty ve vaší databázi.
Jedná se o jednoduchý způsob, jak zobrazovat formátované hodnoty v mobilních aplikacích. Bonusem je, že tyto seznamy voleb jsou automaticky použity ve vašich akčních formulářích, což umožňuje vybrat jednu z hodnot v seznamu a použít ji jako parametr. Jedním z omezení však je, že tyto seznamy jsou statické, protože jsou založeny na souboru JSON.
VSTUPNÍ OVLÁDACÍ PRVKY AKCÍ
Nyní si povíme něco o vstupních ovládacích prvcích! Tato nová funkce vám umožní vytvářet:
- seznamy voleb pomocí souboru manifest.json stejně jako dříve a
- seznamy založené na datových zdrojích.
To vám zaručí, že budete mít vždy aktuální seznamy přístupné přímo z mobilní aplikace!
Tyto akční vstupní ovládací prvky se jednoduše vytvářejí a velmi snadno používají. Chcete-li je používat ve svých mobilních projektech, stejně jako v případě formátovačů nebo vlastních formulářů seznamů a detailů, musíte je zahrnout do své databáze do speciální složky „inputControls“ (my base/Resources/mobile/inputControl).
Tyto vstupní ovládací prvky akce pak budou k dispozici a budou se dát vybrat v sekci Akce, ve vlastnostech parametrů, filtrovaných podle typu parametru akce a způsobu, jakým chcete zobrazit seznamy pomocí formátů.
Zaměřme se na formáty, protože jde o poměrně nový koncept. Formáty v podstatě umožňují definovat způsob, jakým chcete zobrazit své seznamy na straně mobilní aplikace:
- Push: otevře nové zobrazení, které přijde zprava a zobrazí seznam.
- Segmentovaný: zobrazí váš seznam v podobě položek v liště, které můžete vybírat
- Popover: otevře nové zobrazení, které přichází zespodu a zobrazuje seznam.
- List: otevře list zespodu, který zobrazí seznam zespodu.
- Picker: na rozdíl od ostatních formátů umožňuje posouvat se pro výběr požadované hodnoty, místo abyste hodnotu vybrali kliknutím na ni
Nyní se podívejme na několik příkladů!
STATICKÉ VÝBĚROVÉ SEZNAMY
Zde je příklad souboru manifest.json, který lze použít jako statický seznam voleb:
{ "name": "choiceListSheet", "type": [ "text" ], "format": "sheet", "choiceList": { "1":"Vincent", "2":"David", "3":"Anass", "4":"Eric", "5":"Quentin", "6":"Houssam" } }
Velmi podobný formátovači celních dat, že? Jak vidíte, je zde definován jednoduchý statický seznam pro tento akční vstupní ovládací prvek s formátem zobrazení „list„.
DYNAMICKÉ VÝBĚROVÉ SEZNAMY ZE ZDROJE DAT
A zde je příklad založený na datové třídě Contact a atributu LastName.
{ "name": "datasourcePush" "type": [ "text" ], "format":"push", "choiceList": { "dataSource": { "dataClass": "Contact", "field": "LastName", "entityFormat": "%FirstName% %LastName% - %Job%", "search": "LastName", "order": "descending" } } }
Aktualizovaný seznam kontaktů bude přístupný jako seznam v akčním formuláři mobilní aplikace na základě datové třídy Kontakt s formátem zobrazení „push„.
To si ukážeme později, ale skvělé je, že v souboru manifest.json můžete definovat chytré možnosti, například zobrazení vyhledávacího panelu nebo způsob řazení seznamů!
JAK TO VYPADÁ V UŽIVATELSKÉ APLIKACI
V tomto příkladu push, popover a picker zobrazují seznamy na základě datového zdroje. Můžete přidat vyhledávání definující hodnotu „search“ pro formát zobrazení „push“, možnost řazení definující hodnotu „order“ a také formát zobrazení vašich dat (definováním „entityFormat“). Například pro vstupní ovládací prvek picker:
- “ sestupné“ řazení umožňuje seřadit seznam sestupně.
- entityFormat „%FirstName% %LastName% – %Job%“ vám umožní zobrazit „Sophie Adams – UX Designer“, protože jsou k dispozici pole FirstName, LastName a Job.
A co je nejlepší, tyto seznamy jsou dostupné, i když jste offline!
JAK TO VYPADÁ V editoru projektu
V prvním kroku si budete muset ve svém oblíbeném editoru kódu vytvořit vstupní ovládací prvek akce podle příkladů z tohoto příspěvku na blogu nebo z dokumentace a poté je přidat do složky „inputControls“ (moje základna/Resources/mobile/inputControl).
Po návratu do editoru projektu budou vaše vstupní ovládací prvky k dispozici a budou filtrovány podle typu parametru a předem definovaného formátu v souboru JSON.
A jak vidíte na tomto příkladu, je poměrně snadné vytvářet statické seznamy voleb a seznamy založené na datových zdrojích, abyste zaručili co nejlepší zážitek pro vaše mobilní uživatele!
Neváhejte nám poskytnout zpětnou vazbu na fóru 4D a podívejte se do dokumentace, kde najdete další podrobnosti!