Překlady modrých tiskopisů pro ABRA FlexiBee

Ve FlexiBee je možné jakýkoliv tiskopis vytisknout ve 4 základních jazycích. Co ale dělat, když je potřeba mít fakturu přeloženou do nějakého jiného? Modré tiskopisy obsahují jednoduchou možnost, jak si překlad doplnit svépomocí.

4 jazyky FlexiBee

Základní jazyky, kterými umí FlexiBee s uživatelem hovořit, jsou 4. Čeština, slovenština, angličtina a němčina. Pokud nám jde jen o tiskopis faktury, tak je doplněn překlad do polštiny a ruštiny. To je sice hezké, ale pokud je zákazník například z Francie, musíte mu posílat faktury anglicky. Takovýto zákazník může mít ale pocit, že je pro nás méně důležitý. Nebylo by tedy hezké mít možnost mu poslat doklad v jeho rodném jazyce?

Překlad standardního tiskopisu do dalšího jazyka

Jednou z novinek poslední verze FlexiBee (2017.1.12) je možnost překládat uživatelské reporty do libovolného jazyka. Některé výchozí tiskopisy ve FlexiBee jsou již na překlady připraveny. Například faktura nebo objednávka. Stačí je tedy vzít a nahrát jako uživatelský report.

Do pole Přídavné jazyky doplníme čárkou oddělené zkratky požadovaných jazyků. Pro francouzštinu doplníme fr nebo pokud chceme report tisknout například japonsky tak ja :-).

Teď, pokud se pokusíme report vytisknout, tak je sice japonština dostupná, ale report japonsky není. Místo každého popisku jsou jakési kódy uvozené #. To je známka toho, že FlexiBee nemá dané překlady dostupné. Řešení, které FlexiBee vymyslelo, je do příloh doplnit soubor localization.json, který bude překlady obsahovat. V tomto souboru bude jednoduchý JSON objekt, který bude jako klíče obsahovat lokalizační kódy a hodnotami budou dané překlady do zvoleného jazyka. V souboru samozřejmě může být překlad do více než jednoho jazyka.

Překlad modrých tiskopisů :-)

Tuhle možnost jsem si samozřejmě nemohl nechat ujít a tak jsem tento princip doplnil i do modré faktury. Ve výchozím stavu je tedy faktura tímto způsobem přeložena do češtiny, slovenštiny, angličtiny a němčiny. Další jazyky je pak jednoduché doplnit.

Obsah souboru localization.json

Jak jsem již zmiňoval, tak obsahem tohoto souboru je JSON objekt.
Ukázka lokalizace do češtiny:
{
  "--CS--": "česká lokalizace",
  "cs.reports.faktura.datum-vystaveni": "Datum vystavení",
  "cs.reports.faktura.odberatel": "ODBĚRATEL",
  "cs.reports.faktura.dodavatel": "DODAVATEL",
  "cs.reports.faktura.odberatel-sidlo": "Sídlo",
  "cs.reports.faktura.ic": "IČ",
  "cs.reports.faktura.dic": "DIČ",
  "cs.reports.faktura.datum-splatnosti": "Datum splatnosti",
  "cs.reports.faktura.duzp": "Datum zdan. plnění",
  "cs.reports.faktura.bankovni-ucet": "Bankovní účet",
  "cs.reports.faktura.variabilni-symbol": "Variabilní symbol",
  "cs.reports.faktura.zpusob-platby": "Způsob platby",
  "cs.reports.faktura.cena-bez-dph": "Celkem bez DPH",
  "cs.reports.faktura.dph": "DPH",
  "cs.reports.faktura.podpis-a-razitko": "Podpis a razítko",
  "cs.reports.faktura.stranka": "Stránka",
  "cs.reports.faktura.rekapitulace-dph": "Rekapitulace dph v",
  "cs.reports.faktura.zaklad": "Základ",
  "cs.reports.faktura.registrace": "Registrace",
  "cs.reports.faktura.bezny-rezim": "Běžný režim",
  "cs.reports.faktura.zjednoduseny-rezim": "Zjednodušený režim",
  "cs.reports.faktura.provozovna": "Označení provozovny",
  "cs.reports.faktura.pokladni-zarizeni": "Označení pokladního zařízení",
  "cs.reports.faktura.dic-poverujiciho": "DIČ pověřujícího poplatníka",
  "cs.reports.faktura.datum-a-cas": "Datum a čas tržby",
  "cs.reports.faktura.fik": "FIK",
  "cs.reports.faktura.pkp": "PKP",
  "cs.reports.faktura.bkp": "BKP",
  "cs.reports.polozka-faktury.oznaceni": "Označení",
  "cs.reports.polozka-faktury.s-dph": "s DPH",
  "cs.reports.polozka-faktury.bez-dph": "bez DPH",
  "cs.reports.polozka-faktury.sazba-dph": "Sazba\nDPH",
  "cs.reports.polozka-faktury.celkem": "Celkem",
  "cs.reports.polozka-faktury.mnozstvi": "Množství",
  "cs.reports.polozka-faktury.cena-za-mj": "Cena\nza MJ",
  "cs.reports.polozka-faktury.sleva": "Sleva",
}


Součástí modrého tiskopisu vydané faktury je nyní takto vyřešený překlad do všech 4 výchozích jazyků FlexiBee. Pokud potřebujeme doplnit další je do JSONu doplníme překlady.

Ukázka klíčů pro francouzštinu

  "--FR--": "francouzská lokalizace",
  "fr.reports.faktura.datum-vystaveni": "Datum vystavení francouzsky",
  "fr.reports.faktura.odberatel": "ODBĚRATEL francouzsky",
  "fr.reports.faktura.dodavatel": "DODAVATEL francouzsky",
  "fr.reports.faktura.odberatel-sidlo": "Sídlo francouzsky",
  "fr.reports.faktura.ic": "IČ francouzsky",
  "fr.reports.faktura.dic": "DIČ francouzsky",
  "fr.reports.faktura.datum-splatnosti": "Datum splatnosti francouzsky",
  "fr.reports.faktura.duzp": "Datum zdan. plnění francouzsky",
  "fr.reports.faktura.bankovni-ucet": "Bankovní účet francouzsky",
  "fr.reports.faktura.variabilni-symbol": "Variabilní symbol francouzsky",
  "fr.reports.faktura.zpusob-platby": "Způsob platby francouzsky",
  "fr.reports.faktura.cena-bez-dph": "Celkem bez DPH francouzsky",
  "fr.reports.faktura.dph": "DPH francouzsky",
  "fr.reports.faktura.podpis-a-razitko": "Podpis a razítko francouzsky",
  "fr.reports.faktura.stranka": "Stránka francouzsky",
  "fr.reports.faktura.rekapitulace-dph": "Rekapitulace dph v francouzsky",
  "fr.reports.faktura.zaklad": "Základ francouzsky",
  "fr.reports.faktura.registrace": "Registrace francouzsky",
  "fr.reports.faktura.bezny-rezim": "Běžný režim francouzsky",
  "fr.reports.faktura.zjednoduseny-rezim": "Zjednodušený režim francouzsky",
  "fr.reports.faktura.provozovna": "Označení provozovny francouzsky",
  "fr.reports.faktura.pokladni-zarizeni": "Označení pokladního zařízení francouzsky",
  "fr.reports.faktura.dic-poverujiciho": "DIČ pověřujícího poplatníka francouzsky",
  "fr.reports.faktura.datum-a-cas": "Datum a čas tržby francouzsky",
  "fr.reports.faktura.fik": "FIK francouzsky",
  "fr.reports.faktura.pkp": "PKP francouzsky",
  "fr.reports.faktura.bkp": "BKP francouzsky",
  "fr.reports.polozka-faktury.oznaceni": "Označení francouzsky",
  "fr.reports.polozka-faktury.s-dph": "s DPH francouzsky",
  "fr.reports.polozka-faktury.bez-dph": "bez DPH francouzsky",
  "fr.reports.polozka-faktury.sazba-dph": "Sazba\nDPH francouzsky",
  "fr.reports.polozka-faktury.celkem": "Celkem francouzsky",
  "fr.reports.polozka-faktury.mnozstvi": "Množství francouzsky",
  "fr.reports.polozka-faktury.cena-za-mj": "Cena\nza MJ francouzsky",
  "fr.reports.polozka-faktury.sleva": "Sleva francouzsky",


Pro lokalizaci do japonštiny musí všechny klíče začínat místo na fr na ja. A stejně je to s každým dalším jazykem. Buď si tedy zvládneme překlad udělat sami nebo ho pošleme vybranému překladateli.

Lokalizace přídavných polí

Dříve byly překlady přidávaných políček součástí souboru cfg.txt. Abych vše sjednotil a umožnil také tato pole přeložit do libovolného jazyka, přesunul jsem překlady také do souboru localization.json. Vzhledem k tomu, že si můžete do tiskopisů přidat téměř libovolné pole, je potřeba vědět, jak se skládají klíče pro překlad. Klíče přídavných polí začínají vždy zkratkou jazyka. Následuje tečka a text reports a další tečka. Pokud budou pole přidávána do hlavičky dokladu, následuje text faktura a pokud do výpisu položek, tak text polozka-faktury. Klíč je pak ukončen zvoleným názvem vlastnosti, který je uveden v souboru cfg.txt.

Ukázka překladů pro ukázkový soubor cfg.txt

  "cs.reports.faktura.bspBan.iban": "IBAN",
  "cs.reports.faktura.bspBan.bic": "SWIFT",
  "cs.reports.faktura.nastaveni.www": "Www",
  "cs.reports.faktura.nastaveni.email": "E-mail",
  "cs.reports.faktura.nastaveni.tel": "Telefon",
  "cs.reports.faktura.nastaveni.mobil": "Mobil",
  "cs.reports.faktura.cisSml": "Číslo smlouvy",
  "cs.reports.faktura.zakazka": "Zakázka",
  "cs.reports.faktura.cisObj": "Číslo objednávky",
  "cs.reports.faktura.kontaktJmeno": "Kontaktní osoba",
  "cs.reports.polozka-faktury.kod": "Kód: ",
  "cs.reports.polozka-faktury.cenik.zaruka": "Záruka[měsíc]: ",
  "cs.reports.polozka-faktury.poznam": "\nPoznámka: ",
  "cs.reports.polozka-faktury.vyrobniCislaVydana": "Výrobní čísla: ",


Ukázky přeložených faktur

Česky umí faktura od samého začátku
Česky umí faktura od samého začátku

Angličtina jí také nedělala problém
Angličtina jí také nedělala problém

Němčina je novinkou
Němčina je novinkou

Slovenština ani další jazyky nejsou také problém
Slovenština ani další jazyky nejsou také problém


Na co si dát při překladu pozor?

Pole, která umožňují překlad, mají pevnou velikost. Je tedy potřeba, aby překlady počtem znaků plus mínus odpovídaly českému originálu. Pokud je tedy v češtině použita nějaká zkratka, tak i v novém jazyce by bylo vhodné použít zkratku. Nejlépe je to vidět na zkratkách IČ a DIČ.

Stažení tiskopisu


Co bude dál?

Začínám mít pocit, že již mám fakturu celkem „vyšperkovanou“ a že je potřeba všechny změny promítnout i do ostatních tiskopisů. Takže se nejspíš můžete brzo těšit na dodací list, objednávku přijatou a zjednodušený daňový doklad, do kterých bude možné přidávat libovolná pole, přeložit je do libovolného jazyka a bude je možné přebarvovat jako chameleona.

Jo a ještě jsem zapomněl. Pokud se vám některý z mých překladů nelíbí (nejsem žádný jazykový expert), tak si je samozřejmě můžete změnit :-).

ABRA FlexiBee, Modré tiskopisy, Faktura, Customizovatelnost, Překlad

- (11. 8. 2017)
Kája z Norska
Kája z Norska

Jsem programátor, horolezec a tak trochu FlexiBee fanatik :-).
Na CharlieBlogu sepisuji své nápady a poznatky už od roku 2006.