Получение времени с точностью до миллисекунд в 8.х

Опубликовал - - (Rebelx) в раздел Программирование - Универсальные функции

Для некоторых задач необходимо бывает определить текущее время с точностью большей чем секунда. Встроенные в платформу средства не позволяют получить такую точность. Обработка демонстрирует методику получения точного времени

Собственно забираем, плюсуем

Скачать файлы

Наименование Файл Версия Размер
-
.1236328910 8,14Kb
25.09.09
191
.1236328910 8,14Kb 191 Скачать бесплатно

См. также

Комментарии
1. Евгений Люлюк (Evg-Lylyk) 1997 06.03.09 12:15 Сейчас в теме
Простенько :).

Для замеров лучше использовать

Функция ТекущееВремяВМс() Экспорт
//Получаем время в м/с через скрипт
Script.Language = "javascript";
Счетчик = Script.eval("new Date().getTime()");
Возврат Счетчик;
КонецФункции
//---------------

НачалоЗамера = ТекущееВремяВМс();
//---
<Код>
//---
//-------КонецЗамера
ПрошлоМс = ТекущееВремяВМс() - НачалоЗамера;
2. Герман (German) 924 06.03.09 13:20 Сейчас в теме
3. - - (Rebelx) 930 06.03.09 13:42 Сейчас в теме
4. kadr (kadr) 36 13.03.09 09:55 Сейчас в теме
(1) уже давненько используется в Enterprise Integrator
5. Евгений Люлюк (Evg-Lylyk) 1997 13.03.09 14:00 Сейчас в теме
(4) не знал. Я в стандарной консоли отчетов 1с подсмотрел.
6. eugenie zheludkov (eugeniezheludkov) 29 03.07.12 10:51 Сейчас в теме
почитал скрипт и вправду замутный и незачем так изголяться ... да еще и минус у него есть MSScriptControl не на всех серверах установлен а значит есть вероятность падения базы если админов не потормошить :(
есть еще как минимум 2 варианта работающих на любом сервере это через Wbem и .Net но это все не то ..
7. - - (Rebelx) 930 03.07.12 10:59 Сейчас в теме
(6)МоментВремени() - не содержит миллисекунд. Он содержит только время до секунд и уникальный идентификатор документа.
8. eugenie zheludkov (eugeniezheludkov) 29 03.07.12 11:09 Сейчас в теме
да уже прочитал только что понял что всегда ошибался полагая что можно...спасибо.
пс: что нужно установить на сервере "файл.ехе" чтоб MSScriptControl зарегистрировать ? админа тереблю тот тоже не сном не духом
у мня ошибка : {ОбщийМодуль.Math_and_Server.Модуль(25)}: Ошибка при вызове конструктора (COMОбъект): Класс не зарегистрирован Скрипт = Новый COMОбъект("MSScriptControl.ScriptControl");
9. - - (Rebelx) 930 03.07.12 11:45 Сейчас в теме
10. eugenie zheludkov (eugeniezheludkov) 29 04.07.12 06:22 Сейчас в теме
недождавшись ответа использовал этот метод который работает помоему на всех серверах:
Функция ТекущаяДатаМилисекунды() Экспорт
Locator = Новый COMОбъект("WbemScripting.SWbemLocator");
ServicesSet = Locator.ConnectServer(".");
pEnum = ServicesSet.InstancesOf("Win32_OperatingSystem");
Для каждого Object Из pEnum Цикл
Возврат сред(Object.LocalDateTime,1,20);
КонецЦикла;
Возврат 0;
//Скрипт = Новый COMОбъект("MSScriptControl.ScriptControl");
//Скрипт.language = "javascript";
//Возврат Формат(Скрипт.eval("new Date().getTime()"),"ЧГ=0")/1000;
КонецФункции
11. Алексей Стадников (wiz911) 27.12.16 14:04 Сейчас в теме
ТекущаяУниверсальнаяДатаВМиллисекундах() c 8.2
И никаких выдумок )
DenisCh; olgerd666; agent00mouse; +3 Ответить 1
12. _ Ya, Ti, On, Ona, Vmeste celaya strana (agent00mouse) 129 01.03.17 09:26 Сейчас в теме
(11)
ТекущаяУниверсальнаяДатаВМиллисекундах

Спасибо, актуально.