#0
by Arxangel06
Доброго времени суток. Подскажите, кто знает, можно ли в коде 1с установить паузу в выполнении кода? Можно конечно вставить пустой цикл с проверкой времени выполнения, но исполнение этого цикла нагружает проц под завязку, да и вообще решение колхозное. В некоторых случаях можно использовать ПодключитьОбработчкиОжидания(<ИмяПроцедуры>,<Таймаут>), но в данном контексте не канает - нужно делать паузу внутри цикла. Например как в VBS команда Sleep(<Таймаут>). Или vbs-вставка и есть самое корректное решение? Заранее спасибо.
#5
by aleks-id
нет, ну а чо? понапишут копрокода а потом удивляются - а чё это у нас тормозит так? йёёёё... да тут запрос в цикле со слипом в цикле!
#7
by Arxangel06
Это вывод таблицы значений на экран-табло. Задача сводится к следующему: Показать на экране ровно 12 строк текста, подождать 30 секунд, показать следующие 12 строк. Количество строк фиксировано и =60. Т.е. нужно показать 5 страниц, затем после 5ой вернуться к первой. p.s. Нечего сказать - лучше промолчать.
#11
by Arxangel06
а внутри обработчика прописать холостой цикл... Замечательная идея от которой я в самом начале отказался.
#12
by Serginio1
Например при подключении к чему либо пока это устройство занято (почта, порты, файлы итд)
#16
by aleks-id
нафига внутри обработчика холостой цикл? он у тебя будет вызываться 1 раз в 12 секунд и выводить нужную порцию инфы. никаких циклов
#17
by Arxangel06
В итоге vbs рулит. Хотя для какого-нибудь автопилота в следующий раз буду использовать предупреждение с таймаутом.
#18
by Ахиллес
За пустые циклы и предупреждение с тайм-аутом (в целях задержки выполнения кода) прогам нужно руки тупой пилой отпиливать. В клюшках приходилось извращатся, а в восьмёрке для этих целей существует ПодключитьОбработчикОжидания (AttachIdleHandler)
#20
by Fragster
я таки не понял, нафига в временный файл? почему не использовать MSScriptControl.ScriptControl сразу?
#25
by Arxangel06
Ты внимательно читал условие? ПодключитьОбработчикОжидания НЕ работает в данном контексте.
#26
by D_Pavel
я делала паузу через вызов системной команды ping, там можно указать сколько раз пинговать с паузой между пингами в 1 секунду.
#27
by vde69
достоинство - видно что делается и можно прервать паузу недостаток - требуется висение окошка делал так для 7.7 при востановлении последовательности, что-бы другие пошльзователи могли работать
#30
by vde69
реально на прошлой работе выгребал тонны вопросов и предупреждений вставленых в проведение :), а еще хранение таблиц и списков (со ссылками) в реквизите документа и справочника, и еще много чего... человек который это написал к тому времени возомнил себя мего 1с ником и ушел внедрять УПП
#31
by Arxangel06
Ну утрировать-то зачем? Хотя да, если есть желание делать работу ради работы, то паузы в проведении - самое оно. Но если работа все-таки на результат и платят не за время, потраченное на доработку, а за эффективность, то паузы нужны только там, где они действительно нужны.
#32
by pumbaEO
мне кажись попалась его УПП :). Хранение таблиц и списков в реквизите - это точно он.
#33
by боксер
нафига в проведнии пауза? тоже выгребал, но тем не менее использую конечно не на сервере, не COM. а на клиенте где есть необходимость и естественно не в модуле проведения :-)
#37
by Lex_Liven
господи, 35 сообщений в ветке - и нельзя почитать? Тем, что задержка нужна В ЦИКЛЕ!
#39
by aleks-id
+ и ПодключитьОбработчикОжидания в этом случае самое то! в идеале - наваять ВК, которая будет генерить ВнешнееСобытие каждый раз в заданном интервале и обрабатывать его через ОбработкаВнешнегоСобытия
#40
by Fragster
еще пару вещей типа службы для виндуса и назначенных заданий забыл... просто обработчик ожидания спасет...
#42
by misha122062
я такое ставил стремным контрагентам - которые обновлятся не хотели и на обслугу не брали - через полгода запускалась динамичноизменяемая задержка. Базы тормозили Они в крик - меня звать Рубил бабло - ПРОФИТ
#43
by Reset
Использовать обработчик ожидания, с вызовом каждые 30 секунд. p.s. - читал, не тыкайте. Там фуйня.
#46
by misha122062
да ты в степь уводишь чела. Обработчик ожидания не для этого. и задача решается в 2 строки!
#49
by Lex_Liven
А скажи мне, друг, в чет отличие такой задержки от пустого цикла на 100000 итераций? Пожалуй, я сам отвечу: В том, что ты регулируешь длину задержки. И все. Загрузка CPU 100% никуда не девается, прикинь?
#54
by Arxangel06
Ну флудеры... Я себя почувствовал ТСом из ветки про уничтожение инфы на хардах... Одинесеры разделились на два лагеря: 1) копрокодеров, которым положить, что проц загружается на 100% и нифига при этом не делает 2) Vbs, который делает все необходимое, не нагружает проц и реализовать в нем можно хоть лилового черта в малиновую крапинку(это я про ping, sleep, что_еще_такое_предлагали?) p.s. Очень надеюсь вырваться в пятницу на миста-встречу в Москве на Бауманской, заодно и посмотрим друг на друга :)
#56
by Arxangel06
Не, есть еще третий лагерь - ОбработчикиОжидания... Правда непонятно, ожидания чего и кем...
#57
by Arxangel06
Все, я уже не адекватен, это истерика... Модеры, закройте эту флудильню уже.... Или потянем до пятницы и выставим в юмор?
#58
by Fragster
не дождешься. эта ветка будет пятном позора в репутации одинесников, отметившихся в ней
#60
by sergei123654
Ну не долюбливают они обработчикиОжидания как я понял из не внимательного чтения ветки!
#62
by Arxangel06
+ Ну попробуйте в обработчик ожидания параметры передавать... циклически меняющиеся. Очень занимательное занятие, могу сказать...
#64
by Arxangel06
Сменить профессию и род занятий, как bizon2008? Да, это решение всех проблем, однозначно...
#70
by Ksandr
Сначала нужно вызвать: ПодключитьСинтаксисПомощник потом: ПодключитьОбработчикРазума ПодключитьПрямыеРуки и только потом ПодключитьОбработчикОжидания
#71
by Arxangel06
Не-не-не, Дэвид Блэйн. ОбработчикОжидания - штука полезная и нужная, для некоторых вещей незаменимая. Но есть случаи, когда эта штука не работает или работает не так, как надо. Не так там все просто.
#72
by Ksandr
Правда, не понимаю, имеем интервал 12 секунд, нужно выполнить конкретное действие. Исходя из видения задачи по сообщениям в этой теме Допустим данных много и на клиент их тащить нет смысла - делаем так: 1. Получаем и кладем данные во временное хранилище, адрес в реквизит формы. 2. На клиенте подключаем обработчик ожидания в котором определяем процедуру 3. В процедуре вызываем серверную процедуру где берем из временного хранилища нужные данные и выводим на форму.
#73
by Lex_Liven
А чем, собственно, VBS-вставка не устраивает? По-моему, для вашей задачи как раз подходит.
#74
by Ksandr
тьфу блин, инфы 60 строк, 5 страниц, 12 строк на каждой, 30 секунд. ПриСозданииНаСервере создаем страницы программно, таблицы на них тоже программно, вызываем процедуру, которая получит данные и заполнит таблицы. Более сервер не дергаем, пока в этом нет необходимости. ПриОткрытии Подключаем обработчик ожидания, который будет переключать страницы. Второй обработчик с таким интервалом с каким нужно обновлять данные (брать из базы) Профит! Никаких лишних серверных вызовов :)
#77
by Lex_Liven
Тогда такой вопрос, предложенный в вариант не работает - спотыкается на СоздатьОбъект("Текст"). Чем это можно заменить в 8.2.15.310?
#78
by Arxangel06
хорошо, хорошо, убедил. "СоздатьОбъект" - это из клюшек. В снеговике это выглядит как "Новый <ТипОбъекта>". клюшки - 7.7, снеговик - 8.х
#80
by Arxangel06
Как решил конкретно эту задачу в работе, или как сидя дома с котом и пивом вчера перепилил?
#83
by Arxangel06
И не подумаю даже перепиливать, поскольку дома сделано на типовой, а на работе -на самодельной, и очень многое на эту самодельность завязано. А "для себя" решилось так: ПриОткрытии Конец ВывестиСтраницу(НомерСтраницы) Конец Вполне универсальный механизм, при условии, что есть возможность хранить информацию.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
В этой группе 1С
- Группировка в динамическом списке
- Заполнить Макет документа данными из Табличной Части документа-основания
- СКД вывод в таблицу значений, не заполняются параметры
- функция сокращения имени и отчества
- УПП Себестоимость, оборот по 20 счету
- Параметр сеанса отсутствует или удален
- cубконто "Договоры и иные основания возникновения обязательств"
- Как построчно заполнить таблицу в OO из 1с
- Субконто "Регистрация в ИФНС" в ЗУП
- Прочитать текстовый макет
- v8.2. Аналог функции Шаблон() из 1С 7.7 в 1С 8.2
- протокол AS2 для обмена документами
- 1С:Предприятие 8. Управление Автотранспортом. Стандарт
- Не записывается независимый непериодический регистр сведений
- v7: Рег.ВыгрузитьИтоги(тз) <> Запрос.Выгрузить(тз,,0)
- (XDTO) Почему AnyType?
- Зависает консоль администрирования серверов 1С
- как в макете скд вывести параметрысеанса.текущийпользователь
- Обновление измененной бух 82 -вопросик.
- Access вывести форму модально