Page 1 of 1

Data z PmTrend a překryv časových intervalů

PostPosted: Wed 04. Jan 2017 8:15:47
by pokky
Dobrý den, objevil jsem pravděpodobně chybu. Při získávaní dat z objektu PmTrend v čase H:0:0:0 do H:59:59:999 a od H+1:0:0:0 do H+1:59:59:999 dostanu v obou intervalech totožný záznam, pokud daný záznam byl uložený v čase H+1:0:0:0. Jestli je to v důsledku zaokrouhlování, dá se daný problém nějak řešit?
S pozdravem R. Pokorný

Re: Data z PmTrend a překryv časových intervalů

PostPosted: Wed 04. Jan 2017 9:23:32
by pokky
Vzhledem k tomu, že čas ukládám s vteřinovou přesností obešel jsem to zkrácením horního intervalu. Existuje možnost záznamu, který by mohl existovat pro čas mezi H:59:59:0 a H+1:0:0:0?

Re: Data z PmTrend a překryv časových intervalů

PostPosted: Tue 10. Jan 2017 12:18:17
by Tomáš Bräuer
Dobrý den,
máte pravdu, jedná se o chybu, kterou jsem opravil, bude v příští verzi 8.3.18. Problém ve skutečnosti není ve funkci PmTrend.GetData, ale už ve funkci PmTrend.CreateFilter, která vytváří textový filtrační řetězec pro funkci GetData. A v tomto řetězci (lze ověřit pomocí Pm.Debug), pokud čas obsahuje více 500 milisekund, je navíc ještě i posunut i o sekundu nahoru. Takže např čas 2017.01.10 12:00:00.500 je chybně zapsán jako 2017.01.10 12:00:01.500.
Můžete si počkat na další verzi nebo vám mohu poslat opravenou PmCore.dll nebo nahradíte nahradíte první volání Pm.CreateFilter a vlastním složením filtračního řetězce.
Pokud to budete chtít probrat, raději mi zavolejte nebo pošlete email, ať to je rychlejší.

Děkuji za nahlášení chyby.