Blog

Jak zlepšit interní procesy technologií Power Apps?

Jazykové mutace aplikace Power Apps

06.05.2020

Máte zákazníka, který má pobočky ve více zemích? Nebo který požaduje různé jazykové mutace Vaší aplikace? Také jsme tento problém řešili a poradíme vám jak na to.

Zadání

Našim zákazníkem je nadnárodní firma, která požadovala aplikaci pro uživatele v České republice, ale ne všichni jejich zaměstnanci v České republice hovoří naším rodným jazykem. Požadavkem tak bylo:

  • Český a anglický jazyk v první fázi vývoje
  • Možnost rozšířit aplikaci o další jazyky v pozdější fázi vývoje

S druhým požadavkem přišel zákazník později. Ale protože jsme na tento požadavek byli připraveni a nedělali jsme aplikaci jako jednoúčelovou, nezaskočil nás a bylo možné aplikaci později rozšíti také o němčinu, případně o jakýkoliv jiný jazyk.

Řešení

Řešením bylo připravit si kolekci proměnných, podobně jako jsme si v minulém článku připravili kolekci proměnných pro různá barevná schémata.

Kolekce pro různé prvky aplikace

Protože grafických prvků a textů je v aplikaci mnohonásobně více, než barevných schémat, rozhodli jsme se rozdělit kolekce pro jednotlivé ovládací prvky. Tyto kolekce jsou definované v „OnStart“ celé aplikace

ClearCollect(col_Language_Button,
Table(
{Lang: „CZ“, t_Button: „Tlačítko“, t_Save: „Uložit“, t_Cancel: „Zrušit“,
{Lang: „EN“, t_Button: „Button“, t_Save: „Save“, t_Cancel: „Cancel“,
{Lang: „DE“, t_Button: „Schaltfläche“, t_Save: „Speichern“, t_Cancel: „Abbrechen“
)
);

ClearCollect(col_Language_Label,
Table(
{Lang: „CZ“, t_Label: „Štítek“, t_Welcome: „Vítejte“},
{Lang: „EN“, t_Label: „Label“, t_Welcome: „Welcome“},
{Lang: „DE“, t_Label: „Etikett“, t_Welcome: „Willkommen“}
)
);


ClearCollect(col_Language_TextInput,
Table(
{Lang: „CZ“, t_TextInput: „Zadávání textu“},
{Lang: „EN“, t_TextInput: „Text input“},
{Lang: „DE“, t_TextInput: „Texteingabe“}
)
);


ClearCollect(col_Language_Others,
Table(
{Lang: „CZ“, t_DatePicker: „cs-cz“, t_ComboBox: „Najděte položky“, t_Checkbox: „Volba“, t_Toggle_True: „Zapnuto“, t_Toggle_False: „Vypnuto“,
{Lang: „EN“, t_DatePicker: „en-us“, t_ComboBox: „Find items“, t_Checkbox: „Option“, t_Toggle_True: „On“, t_Toggle_False: „Off“,
{Lang: „DE“, t_DatePicker: „de“, t_ComboBox: „Suchen von Elementen“, t_Checkbox: „Option“, t_Toggle_True: „Auf“, t_Toggle_False: „Aus“
)
);

Definice proměnný pro jednotlivé prvky

Když už máme kolekce nadefinované, je třeba nastavit proměnné, které budou hodnoty měnit v jednotlivých prvcích aplikace. Toto nadefinujeme také v „OnStart„.

Set(r_Language_Button, First(Filter(col_Language_Button,Lang = „CZ“)));

 

Set(r_Language_Label, First(Filter(col_Language_Label,Lang = „CZ“)));

 

Set(r_Language_TextInput, First(Filter(col_Language_TextInput,Lang = „CZ“)));

 

Set(r_Language_Others, First(Filter(col_Language_Others,Lang = „CZ“)));

Nastavení textů jednotlivých prvků aplikace

Pokud máme připravenou proměnou pro různé ovládací prvky, můžeme je nyní nastavit. Pro tlačítko Save jsme jako „Text“ nastavili:

r_Language_Button.t_Save

Takto si postupně nadefinujeme a nastavíme jazyky pro všechny prvky aplikace. Včetně jazyku kalendáře v podobě „DatePicker„.

Závěr

Nyní vám už jen zbývá dořešit uložení nastavení pro každého uživatele.

Doufáme tedy, žá vám náš návod byl nápomoc při řešení nejedné nelehké sitauce s Power Apps.

Zaujali jsme Vás?
Vše Vám předvedeme a vysvětlíme

Prostě nám napište