1с задержка выполнения кода на сервере

Как сделать, задать паузу при выполнении кода?

Если это какая-нибудь обработка и запускается на клиенте(у пользователя) то можно использовать обработчик ожиданий у встроенных функций:
Код 1C v 8.х

Для паузы можно использовать следующие примеры:
Код 1C v 8.х

1с задержка выполнения кода на сервере. print. 1с задержка выполнения кода на сервере фото. 1с задержка выполнения кода на сервере-print. картинка 1с задержка выполнения кода на сервере. картинка print. Если это какая-нибудь обработка и запускается на клиенте(у пользователя) то можно использовать обработчик ожиданий у встроенных функций: Код 1C v 8.х

Похожие FAQ

Еще в этой же категории

Ключевые слова и Изображения

Слова упорядочены по частоте использования в тексте

Изображения

Если нужна просто пауза, а не точное время ожидания, то можно ещё так:

Вот тут чувак еще один способ предложил: «В итоге я понял, что нормальной реализации с помощью языка 1С нету, так как в большинстве случаев используется подключение Wscript.Wshell, и видимо не просто так. Но использовать первый вариант я совершенно не хотел, из за записи файла на диск.

У меня был небольшой опыт работы c VBScript, поэтому я знал, что в скрипт можно переадавать параметры. Этим я и воспользовался. Был написан простой скрипт ожидания, который принимал один параметр:

Этот файл необходимо положить на сервер(для вызова на сервере) и на клиент(для вызова на клиенте), в моём случае(сервер терминалов), я положил файл на оба сервера(терминальный и на сервер 1С).

Теперь у нас есть скрипт который будет ждать столько, сколько мы скажем, осталось его вызвать из программы.

Вызов происходит в две строчки кода:

Я положил процедуру в общий модуль на клиенте, и в общий модуль на сервере, так же в параметр задал ПутьХраненияФайла. Вот таким образом с помощью Wscript, без постоянного создания файлов скрипта можно реализовать паузу в работе кода с минимальным значением

Источник

1с задержка выполнения кода на сервере. SearchSiteYes. 1с задержка выполнения кода на сервере фото. 1с задержка выполнения кода на сервере-SearchSiteYes. картинка 1с задержка выполнения кода на сервере. картинка SearchSiteYes. Если это какая-нибудь обработка и запускается на клиенте(у пользователя) то можно использовать обработчик ожиданий у встроенных функций: Код 1C v 8.х

1С 8.3 Пауза в коде процедуры/функции

1с задержка выполнения кода на сервере. kod 1c 1cnik.by. 1с задержка выполнения кода на сервере фото. 1с задержка выполнения кода на сервере-kod 1c 1cnik.by. картинка 1с задержка выполнения кода на сервере. картинка kod 1c 1cnik.by. Если это какая-нибудь обработка и запускается на клиенте(у пользователя) то можно использовать обработчик ожиданий у встроенных функций: Код 1C v 8.х

Если ЗадержкаВСекундах = 0 Тогда
Сообщить ( «Не задана задержка!» );
Возврат
КонецЕсли;

Если ТранзакцияАктивна () Тогда
ЗафиксироватьТранзакцию ();
КонецЕсли;

Сообщить ( «старт паузы в: » + ТекущаяДата ());

Если Вариант = «Ping» Тогда //не грузит процессор

ИначеЕсли Вариант = «smaharbA» Тогда //не грузит процессор

Для к = 1 По ЗадержкаВСекундах Цикл
ПолучитьCOMОбъект ( «winmgmts:» ). ExecNotificationQuery ( «Select * from __instancemodificationevent where TargetInstance isa ‘Win32_UTCTime'» ). NextEvent ();
КонецЦикла;

ИначеЕсли Вариант = «Пустой цикл» Тогда // загрузка процессора до 100%

ДатаЗавершенияПаузы = ТекущаяДата () + ЗадержкаВСекундах ;
Пока ТекущаяДата () ДатаЗавершенияПаузы Цикл
ОбработкаПрерыванияПользователя ();
КонецЦикла;

ИначеЕсли Вариант = «Sleep» Тогда // нужна установленная программа sleep.exe

ИначеЕсли Вариант = «DynamicWrapper» Тогда // используется внешняя библиотека. д.б. установлена KERNEL32.DLL

ИначеЕсли Вариант = «SleepJs» Тогда // используется WScript.Shell

УдалитьФайлы ( КаталогВременныхФайлов ()+ «sleep.js» ); // обязательно чистим каталог

ИначеЕсли Вариант = «SleepVbs» Тогда // используется WScript.Shell

SignS = Формат ( ТекущаяДата (), «ДФ=yyyyMMddhhmmss» );
ПутьScript = КаталогВременныхФайлов ()+ «SleepScript» + SignS + «.vbs» ;

УдалитьФайлы ( ПутьScript ); // обязательно чистим каталог

ИначеЕсли Вариант = «TimeoutWS» Тогда // используется WScript.Shell

ИначеЕсли Вариант = «Timeout» Тогда // используется WScript.Shell, но показывает черное окно при каждом старте паузы

Сообщить ( «финиш паузы в: » + ТекущаяДата ());

Источник

Как сделать паузу в коде?

Эта статья расскажет о способах написания пауз на встроенном языке 1С:Предприятие 8, их достоинствах и недостатках. Также Вы узнаете, какой способ является самым оптимальным с точки зрения потребляемых ресурсов компьютера.

Использование пауз в 1С — стародавняя головная боль. До сих пор этот механизм никак не реализован на уровне платформы. Поэтому программистам приходится изобретать велосипеды и ходить по граблям.

1). Использование целочисленных циклов

Самый старый (встречал такие шедевры еще на платформе 1с:Предприятие 7.7), самый грубый и самый ресурсоемкий способ — использование цикла, ограниченного целым числом:

Грубый — потому что невозможно точно предсказать, сколько будет длиться цикл, ведь скорость его выполнения напрямую зависит от вычислительной мощности компьютера. Ресурсоемкий — потому что процесс 1С занимает 100% ресурсов ПК.

Его мы однозначно отметаем!

2). Использование цикла с датой

Другой древний способ, чуть более точный, но такой же ресурсоемкий — использование цикла, ограниченного датой:

По-прежнему, точность данного алгоритма оставляет желать лучшего, т.к. погрешность может составлять 100 и более миллисекунд. Да и быстродействие не на высоте.

Его мы тоже отметаем!

3) Использование обработчиков ожидания

При работе с формами для реализации повторяющихся во времени действий, можно воспользоваться механизмом обработчиков ожидания:

Из плюсов метода: точность и низкое потребление ресурсов ПК. Из недостатков этого метода можно отметить ограниченность его использования только клиентской частью приложения (на сервере обработчики ожидания не работают). Кроме того, его невозможно использовать для вставки в выполняемый код, т.к. обработчики 1С задействованы только в свободное от основных вычислений время.

4) Использование скриптов WShell

Но у приведенной процедуры есть свои недостатки: вряд ли удастся использовать ее на платформе Linux или веб-клиенте.

Источник

Как в 1С кошерно реализовать задержку (delay, sleep и т. д.)?

3. Пустой цикл некошерен, я знаю кошерное решение. 60% (6)1с задержка выполнения кода на сервере. voting3. 1с задержка выполнения кода на сервере фото. 1с задержка выполнения кода на сервере-voting3. картинка 1с задержка выполнения кода на сервере. картинка voting3. Если это какая-нибудь обработка и запускается на клиенте(у пользователя) то можно использовать обработчик ожиданий у встроенных функций: Код 1C v 8.х
1. Пустой цикл вполне кошерен 30% (3)1с задержка выполнения кода на сервере. voting1. 1с задержка выполнения кода на сервере фото. 1с задержка выполнения кода на сервере-voting1. картинка 1с задержка выполнения кода на сервере. картинка voting1. Если это какая-нибудь обработка и запускается на клиенте(у пользователя) то можно использовать обработчик ожиданий у встроенных функций: Код 1C v 8.х
2. Пустой цикл некошерен, я не знаю кошерного решения 10% (1)1с задержка выполнения кода на сервере. voting2. 1с задержка выполнения кода на сервере фото. 1с задержка выполнения кода на сервере-voting2. картинка 1с задержка выполнения кода на сервере. картинка voting2. Если это какая-нибудь обработка и запускается на клиенте(у пользователя) то можно использовать обработчик ожиданий у встроенных функций: Код 1C v 8.х

Всего мнений: 10

Предыстория создания ветки:
Необходимо реализовать задержку после загрузки страницы в ИЕ.
Подождать пока загрузиться страничка.

Я сделал:
While IE.ReadyState 1. Пустой цикл вполне кошерен

(0) ну так чисто чтоб поржать:

вот пятничное решение:
Берем плату stm32 к ней цепляем реле, провод из розетки через реле к человеку-таймеру
<

>
тут подаем 5В на реле
>

(40) (41) тогда вам кошерней всего так:

Чтоб процессорное время не пропадало зря предлагаю такую функцию:

1с задержка выполнения кода на сервере. empty. 1с задержка выполнения кода на сервере фото. 1с задержка выполнения кода на сервере-empty. картинка 1с задержка выполнения кода на сервере. картинка empty. Если это какая-нибудь обработка и запускается на клиенте(у пользователя) то можно использовать обработчик ожиданий у встроенных функций: Код 1C v 8.х

(31) Вариант ещё некошернее.
Конечно, похвастаться знанием работы с мультиплатформеностью здорово, но лучше всё- таки решать в пределах одной системы.
Например, так:

Этот способ тоже плох, но гораздо лучше 31-го.

(50) В чем прикол юзать IE? Зачем?
Подробный MSDN. И нужно создавать десяток объектов для ускорения работы.

(59) И чем HTTPСоединение не устраивает, что можно сделать в IE чего нельзя через HTTPСоединение?
Как юзать хттп соединение для парсинга сайта?

(73) HTTPСоединение используется для получения данных, парсинг это отдельная задача, IE для парсинга нафиг не нужен.

(74) а что происходит по методу клик? Правильно либо POST либо GET запрос, собственно что позволяет сделать стандартное HTTPСоединение и замечу что работать оно будет в 100 раз быстрей чем сначала загрузить страницу, потом вставить данные и сгенерировать событие. А правильно просто прописать заголовки запроса и отправить запрос, получить ответ в виде кукисов, короче копайте в сторону заголовков POST запросов, будете работать на уровне запросов будет намного быстрей работать.

(79)
>POST-запрос нужно еще разобраться как сделать, а тут Click и все.
Имхо во всем что делаешь надо разбираться, объясню еще раз на пальцах: используя IE вы тратите время на загрузку нафиг вам ненужной страницы авторизации, получаете геморой в виде необходимости дожидаться ее окончательной загрузки чтоб потом в поля авторизации подставить нужные значения и сгенерировать событие нажатия кнопки. А правильно просто сгенерировать правильно заголовки и тело POST запроса (что занимает доли секунды), отправить его и получить результат.

>И потом, в IE есть DOM-модель, а в HTTPСоединении она есть?
Вы из тех которые плоскогубцами гвозди забивают? В 1С есть объект ПостроительDOM, если вы по DOMу претесь.

Источник

Пауза в выполнении кода

(29) реально на прошлой работе выгребал тонны вопросов и предупреждений вставленых в проведение :),
а еще хранение таблиц и списков (со ссылками) в реквизите документа и справочника, и еще много чего.

человек который это написал к тому времени возомнил себя мего 1с ником и ушел внедрять УПП

Ну флудеры. Я себя почувствовал ТСом из ветки про уничтожение инфы на хардах. Одинесеры разделились на два лагеря:
1) копрокодеров, которым положить, что проц загружается на 100% и нифига при этом не делает
2) Vbs, который делает все необходимое, не нагружает проц и реализовать в нем можно хоть лилового черта в малиновую крапинку(это я про ping, sleep, что_еще_такое_предлагали?)

p.s. Очень надеюсь вырваться в пятницу на миста-встречу в Москве на Бауманской, заодно и посмотрим друг на друга 🙂

1с задержка выполнения кода на сервере. empty. 1с задержка выполнения кода на сервере фото. 1с задержка выполнения кода на сервере-empty. картинка 1с задержка выполнения кода на сервере. картинка empty. Если это какая-нибудь обработка и запускается на клиенте(у пользователя) то можно использовать обработчик ожиданий у встроенных функций: Код 1C v 8.х

(68) Правда, не понимаю, имеем интервал 12 секунд, нужно выполнить конкретное действие.
Исходя из видения задачи по сообщениям в этой теме

тьфу блин, инфы 60 строк, 5 страниц, 12 строк на каждой, 30 секунд.

ПриСозданииНаСервере
создаем страницы программно, таблицы на них тоже программно,

вызываем процедуру, которая получит данные и заполнит таблицы. Более сервер не дергаем, пока в этом нет необходимости.

ПриОткрытии
Подключаем обработчик ожидания, который будет переключать страницы.
Второй обработчик с таким интервалом с каким нужно обновлять данные (брать из базы)

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *