V knihovně filtrů i v nastavení událostí je možné zajímavě pracovat s výchozí hodnotou pro datumová pole a jejich formátování. V tomto článků si řekneme pár základních pravidel a pro zkušenější přidáme odkaz na další dokumentaci.
Formátování datumu a času
Přehledné zobrazení data může rozhodovat o tom, jestli uživatel nebude dělat zbytečné chyby nebo něco nepřehlédne. Proto je vhodný formát důležitý. Formátování datumových polí se nejvíce používá v Knihovně filtrů v nastavení sloupců.
Definice formátování vychází přímo od Microsoftu a umožňuje základní formáty nastavit rychle a jednoduše. Zároveň máte možnost si vyhrát a nastavit datum přesně tak, jak potřebujete. Při formátování je nutné respektovat, že velká a malá písmena mají různý význam a proto by jste to neměli poplést.
Základní formátování jedním písmenkem:
Specifikátor formátu | Popis | Příklady |
---|---|---|
"d" | Vzor krátkého formátu data. | 14.6.2019 |
"D" | Vzor dlouhého formátu data. | středa 14. června 2019 |
"g" | Vzor obecného formátu data/času (krátkého formátu času). | 14.6.2019 14:30 |
"G" | Vzor obecného formátu data a času (dlouhého formátu času). | 14.6.2019 14:30:01 |
Další možností je "vyskládat" si vlastní verzi formátování. K tomu můžete použít další písmenka. Jejich seznam a podrobnosti jsou v odkazu na konci této kapitoly.
Pokud například potřebujete zobrazit jen měsíc a rok, stačí do formátovacího pole napsat tato písmena:
MMMM yyyy
a dostanete takovýto výsledek:
VAROVÁNÍ: Při formátování si dejte pozor na jednu zvláštní zákeřnost. Zatímco měsíc zadáváte velkým písmenkem "M", tak minuty mají pro změnu malé "m". I zkušenému programátorovi se v zápalu formátování stane, že si to poplete. Chyba často není na první pohled poznat, protože se můžete trefit do nešťastné kombinace mm-yyyy např. 14.06.2019 13:08. To pak vyjde 08-2019 místo 06-2019.
Více se můžete dočíst na tomto odkazu: Řetězce formátu vlastní data a času
Výchozí hodnoty pro datum
V Knihovně filtrů i v úkonech můžete při nastavování výchozích hodnot využít malinký kousek kódu, který umožní vypočítat výchozí datum. Používá se k tomu programátorský zápis, ale nejde o nic těžkého.
První věc, kterou musíte vědět, že budeme používat dva základní příkazy:
Příkaz, který vrací datum a čas:
=Now()
Příkaz, který vrací jen datum:
=Today()
VAROVÁNÍ: Pří výběru musíte brát v potaz, jaký dopad má časová složka v datumu. Pokud chcete vyfiltrovat všechny spisy zadané do dneška, tak ve sloupci Zadáno bude např. 14.6.2019 13:40. Pokud by jste např. pro parametr Datum do použili pro výchozí hodnotu Today, tak vrátí 14.6. 2019 00:00. Každý spis zadaný po půlnoci se tedy ve filtru nezobrazí. Použitím Now dojde k nastavení aktuálního datumu i s časem, např. 14.6.2019 13:44 a zahrne všechny spisy zadané do této hodiny a minuty.
Ještě více zajímavou funkcí je možnost použít rozšířenou variantu. K hlavnímu slovu přidáte funkci, která umožní datum někam posunout. Typickým příkladem je posun o počet dnů:
=Today.AddDays(-7)
Tato funkce nastaví výchozí datum o sedm dnů zpět. V Evoliu se tato možnost hodně využívá a bez ní by filtry neměly takovou pružnou konfiguraci.
Nejčastěji používané funkce:
AddDays(-7)
AddMonths(-1)
AddYears(-1)
Více se můžete dočíst na tomto odkazu: Datum a čas v C#