Aplikace umožňuje konfigurovat vybrané systémové nebo uživatelské reporty. Pokud Vám systémové reporty nedostačují nebo je pro Vás tvorba uživatelských reportů příliš technicky náročná jsou konfigurovatelné reporty právě pro Vás.
Pro obě skupiny reportů platí, že report musí být připraven pro použití konfiguračních parametrů. Systémové reporty připravují tvůrci aplikace, uživatelské reporty musí být vydány společně se specializovanými přílohami.
Konfigurovatelný report je následně možné uživatelsky nastavit ve webovém rozhraní.
Seznam konfigurovatelných reportů lze získat na adrese:/c/{firma}/configurable-reports
nebo přímo na demo aplikaci. V první fázi zpřístupníme ke konfiguraci fakturu vydanou a objednávku přijatou.
Úložiště konfigurace
K dispozici jsou specializovaná URL.
Metadata reportu jsou dostupná na adrese:
/c/{firma}/configurable-reports/{reportId}/metadata
Konfiguraci reportu lze číst a zapisovat na adrese:
/c/{firma}/configurable-reports/{reportId}/configuration
Lokalizaci reportu lze číst a zapisovat na adrese:
/c/{firma}/configurable-reports/{reportId}/localization
Parametry se ukládají ve formátu JSON
.
Pro uživatelský report se použijí vlastní přílohy reportu s názvy
config.json
pro konfiguraci,metadata.json
pro metadata,localization.json
pro lokalizace.
Případně lze nastavení uložit přímo do cílového umístění. Pro systémový report se JSON
uloží do evidence global-store
pod klíčem {kód pro tisk}-config.json
.
Kód pro tisk {reportId}
lze získat na URL {evidence}/reports.xml
pod vlastností printCode
. Např. pro sumovaný report faktury bude výsledný klíč: favAkt:fakturaKB:SUM-config.json
API adaptéru
Adaptér dostupný v reportu prostřednictvím proměnné _ADAPTER
nabízí sadu metod pro získání hodnot z konfigurace.
<parameter
name="_ADAPTER"
class="cz.winstrom.service.dok.DokladReportAdapter"></parameter>
Metody adaptéru
boolean cfgContains(String key);
Zda konfigurace obsahuje vlastnost pro uvedený klíč.
Boolean cfgBoolean(String key); Boolean cfgBoolean(String key, boolean defaultValue);
Získání logické hodnoty z konfiguračního JSONu.
String cfgString(String key); String cfgString(String key, String defaultValue);
Získání textové hodnoty z konfiguračního JSONu.
Integer cfgInteger(String key); Integer cfgInteger(String key, Integer defaultValue);
Získání číselné hodnoty z konfiguračního JSONu.
List<ReportProperty> cfgProperties(String key);
Získání definic pro zobrazení vlastností.
Metody třídy ReportProperty
String getProperty();
Název vlastnosti.
boolean cfgContains(String key);
Zda konfigurace pro vlastnost obsahuje vlastnost pro uvedený klíč.
Boolean cfgBoolean(String key); Boolean cfgBoolean(String key, boolean defaultValue);
Získání logické hodnoty z konfigurace pro vlastnost.
String cfgString(String key); String cfgString(String key, String defaultValue);
Získání textové hodnoty z konfigurace pro vlastnost.
Integer cfgInteger(String key); Integer cfgInteger(String key, Integer defaultValue);
Získání číselné hodnoty z konfigurace pro vlastnost.
boolean isBold();
Zda má být hodnota zobrazena tučným fontem.
Ukázka definice
Tato ukázka definice ukazuje možnost změnu barvy písma, pozici loga, šířku okraje, dále definuje tři pole v levém sloupci tiskopisu - datum vystavení, ulici a datovou schránku.
{
"replaceWhiteFontWithBlack": true,
"logoPosition": "left",
"borderWidth": 20,
"addonFields.left": [
{
"property": "datVyst",
"bold": true,
"width": 50,
"align": "right"
},
{
"property": "firma.ulice"
},
{
"property": "nastaveni.datovaSchranka",
"italic": true
}
]
}
Ukázka použití
Ukázka použít ukazuje zápis ve zdrojovém kódu reportu.
<conditionalStyle>
<conditionExpression>
<![CDATA[$P{_ADAPTER}.cfgBoolean("replaceWhiteFontWithBlack", false)]]>
</conditionExpression>
<style forecolor="#010101" backcolor="#0092FF"/>
</conditionalStyle>
Lokalizace
Pro lokalizace se použije soubor s názvem localization.json
.
Běžná lokalizace se získá pomocí klíče:
{localeCode}.{groupName}.{subgroupName}.{itemName}
Lokalizace objektu se získá pomocí klíče:
{localeCode}.{className}.{code}
Ukázka definice
Ukázka lokalizace definuje překlad pole stránka a státu CZ v češtině:
{
"cs.reports.faktura.stranka": "~ Stránka ~",
"cs.Stat.CZ": "Země koruny české"
}
Ukázka použití
Ukázka použít ukazuje zápis ve zdrojovém kódu reportu.
<textFieldExpression>
<![CDATA[$P{_ADAPTER}.getTitle( $P{_LOCALE}.GID_REPORTS, "faktura", "stranka", false)]]>
</textFieldExpression>
<textFieldExpression>
<![CDATA[$P{_ADAPTER}.getLocalizedText( $F{stat}, new java.util.Locale($P{_LOCALE}.getLocaleCode()))]]>
</textFieldExpression>
Potřebujete poradit?
V případě dotazů k aplikaci nás kontaktujte na podporaflexi@abra.eu případně prostřednictvím chat okna v pravém dolním rohu.