Časy uvnitř objektů… (a všude jinde)

Automaticky přeloženo z Deepl

Objekty jsou opět v kurzu a nadále dokazují svou užitečnost, která vám jako vývojáři usnadní život.

Používání hodnot času (nebo trvání) uvnitř objektů je nyní plynulejší a intuitivnější. Počínaje verzí 4D v17 se časy uvnitř objektů nastavují jako sekundy – a nikoli milisekundy!

Dříve nebyl pro uživatele viditelný, protože OB SET a OB Get musely být použity s konstantou is time, takže konverze byly prováděny automaticky.

OB SET ($myObject; "myTime";$time;is time)
$time :=OB Get ($myObject; "myTime";is time)

Nyní již tato konstanta není povinná. Výše uvedený kód lze zkrátit, ale ještě důležitější je, že lze použít i objektový zápis!

$myObject.myTime:=$time
$time :=$myObject.myTime

ČAS V JINÝCH SOUVISLOSTECH

DOTAZOVÁNÍ NA POLE OBJEKTU

  • Od nynějška se při dotazování na pole objektu pomocí QUERY BY ATTRIBUTE, se porovnávání číselných a časových hodnot provádí v sekundách namísto milisekund.

Zde jsou dva příklady, které vedou ke stejnému výsledku:

QUERY BY ATTRIBUTE([Table_1];[Table_1]z;"time";"=";?12:00:00?)

QUERY BY ATTRIBUTE([Table_1];[Table_1]z;"time";"=";12*60*60)

OBLAST WEBU

  • Při volání JavaScriptu ve webové oblasti se při použití převodu na a z času provádí převod v sekundách místo v milisekundách:
    • WA Vyhodnotit JavaScript
    • WA SPUSTIT FUNKCI JAVASCRIPTU
    • $4d bridge

KOMPATIBILITA MŮŽE BÝT UDRŽOVÁNA Snadno

V případě potřeby lze u existujících databází toto výchozí nastavení změnit pomocí příkazu SET DATABASE PARAMETER a výběrem Times inside objects.

Pro tuto stránku option jsou k dispozici dvě hodnoty :

  • Times in milliseconds
  • Times in seconds

Tento parametr se vztahuje na samotnou databázi, nikoli pouze na aktuální proces. Chcete-li zachovat kompatibilitu nebo napomoci procesu migrace, lze tento příkaz zavolat v průběhu On Startup Database Method.

Roland Lannuzel
- Product Owner & 4D Expert - Po studiu elektroniky se Roland věnoval průmyslovým IT jako vývojář a konzultant, který vytvářel řešení pro zákazníky s různými databázemi a technologiemi. Koncem 80. let se zamiloval do 4D a používal jej při psaní podnikových aplikací, které zahrnovaly účetní, fakturační a e-mailové systémy. nakonec se připojil ke společnosti v roce 1997 a Rolandův cenný přínos zahrnuje návrh specifikací, testovacích nástrojů, demoverzí a také školení a přednášky pro komunitu 4D na mnoha konferencích. Nadále aktivně utváří budoucnost 4D definováním nových funkcí a nástrojů pro vývoj databází.