Всем доброго времени суток!

Столкнулся с такой проблемой/багом/фичей в 1С. Есть некая обработка "Рабочее место", на форме которой размещено множество списков документов и справочников. Естественно на множество из них подвешены процедуры ПриПолученииДанных и ПриВыводеСтроки. На некоторых списках установлено автообновление - 60 секунд. Было замечено, что при обновлении или автообновлении одного списка, обновляются все списки на форме и естественно срабатываю вышеупомянутые события, что в итоге замедляет работы платформы. Пересмотреть все процедуры ПриПолученииДанных и ПриВыводеСтроке можно и скорее всего оно даст свой результат. Но суть вопроса именно в том, почему при обновлении одного списка, обновляются все списки формы?

Данные ошибки были замечены на 8.3.10 и на 8.2.19 Обычное приложение. Конфигурация - управление торговлей 2.3

Упрощенная версия обработки во вложении
---
какая ошибка? Что при обновлении одного списка документов на форме происходит вызов "При получении данных" другого списка этой же формы? До сих пор не понимаю, где ошибка то? При получении данных так и работает - на получение данных формой, на которой список расположен. И работает он так уже N-надцать лет.
---
Возможно там прописано что-то вроде ОбновитьИнтерфейс(). А если хотите работоспособность платформы, то делайте обновление по нажатию или вешайте ещё на какое событие
---
Каким образом на списках установлено автообновление?
---
смысл выкладывать пустую обработку без реального кода?

В обработке у вас открывается документ список реализаций без отбора. Как минимум - задавайте ограничение/отбор в пределах текущего дня/месяца. А лучше переделайте в таблицу, которую заполняете по событиям таблицы заказов.
---
В обработке у вас открывается документ список реализаций без отбора. Как минимум - задавайте ограничение/отбор в пределах текущего дня/месяца. А лучше переделайте в таблицу, которую заполняете по событиям таблицы заказов.

Потому что в этой обработке уже реализована интересующая ошибка. И обработка намеренно создана максимально пустой, чтобы показать, что даже в пустой обработке ошибка присутствует
---
какая ошибка? Что при обновлении одного списка документов на форме происходит вызов "При получении данных" другого списка этой же формы? До сих пор не понимаю, где ошибка то? При получении данных так и работает - на получение данных формой, на которой список расположен. И работает он так уже N-надцать лет.
---
Спасибо. Это как раз и интересовало. Хотя до сих пор не понимаю, почему оно так работает. Почему данные получает один список, а событие срабатывает на другом списке? И почему тогда эти события привязаны объекту табличноеПоле а не к форме в целом, если оно реагирует на обновление луюого списка на форме? Кстати ПриВыводеСтроки тоже реагирует на обновление других списков. Получается создавать такие обработки с большим количеством списком и со всякими динамическими обработчиками не есть хорошо. И получается пора все таки переходить на управляемые формы.
---
ну и не сказать, что так делать категорически нельзя. У меня много списков, в которых делаются те или иные вычисления и при получении данных и при выводе строки. Оно просто как - вначале делаешь на файловой. Документов мало, все летает. База растет - все начинает тормозить. С файлового варианта переходишь на клиент-серверный вариант. Все летает. База растет. В какой-то момент начинает подтормаживать. Запускаешь замер производительности, смотришь узкие места, где код выполняется дольше всего - придумываешь как оптимизировать.

Да, в этом у управляемых форм и динамических списков есть плюсы - расчет по сути происходит только для отображаемых данных. Но и минусов там достаточно. Точнее сказать не минусов, а нюансов, на обход которых по первой затратишь гораздо больше времени, чем потратил бы в обычном приложении, но это все дело наживное и с опытом уже отступает на второй план.
---
Ну сами по себе процедуры при получении данных безобидны, если их грамотно использовать. Просто у меня на форме таких списков больше 20, и дергались каждый из них каждые пять секунд. При этом независимо от того, какая у тебя сейчас активная фора, Форма документа, отчет открыли или что то другое))) Пока эта тяжелая обработка открыта и висит в окне 1С у пользователя, она кажддые пять секунд обновляет все списки, которые пользователь успел хоть раз открыть\посмотреть за время сеанса и вызывает событие при получении данных. А почему каждые пять секунд - потому что было 2 списка, у которых было настроено автообновление каждые 10 секунд. И было бы не страшно, если бы эти списки обновлялись каждые 10 секунд - На них даже ничего навешено не было))) Но нет же, мы обновляем все списки на форме и фигачим ненужные запросы каждые 5 секунд, даже если нам эти списки сейчас и нафиф не нужны :::))).

Автообновление я то убрал, и пока что нахожусь в процессе пересмотра всех процедур навешенных на списки. Просто был очень удивлен таким поведением платформы.
---
Не обновил страницу
---
Вы молодец! Заметили как работает "Рабочее место"!
А вот ошибок в описании работы обработки в вашем описании я не заметил....
Если вам не нужна эта обработка - не запускайте ее - не будет тормозить...
Или помощнее компы купите.
---
Хороший ответ, вот только не позволяет автору топика понять что делать дальше, особенно если купит компы помощнее и проблема останется... :)
---
жиза...
---
Это больше похоже на проблему кода. Кто же автообновляет списки каждые 60 секунд?!
---
например обработки электронной очереди со статусами заказов покупателей. Ну так, на вскидку.
---
А мы то тут при чем?
Он НИЧЕГО не сообщил о проблеме...
Ни конфу ни на чем крутит ни саму обработку не показал...

Да можно сказать что у меня тормозит обработка - посоветуйте что делать?
Какой ответ вы дождетесь на такую тему?
---
Напишу немного подробней. На форме есть несколько списков документов. У одного из них стоит автообновление с периодом 60 секунд. Обновляться должен по идее только этот список. Но по неведомым причинам обновляются все списки, которые размещены на форме. То, что происходит при обновлении всех списков - это другая проблема, и да там можно найти что оптимизировать. суть вопроса - почему обновляются все списки на форме, когда должен обновляться только один.

Внес изменения в тему поста. Добавил упрощенную версию обработки с двумя списками документов. При этом один список обновляется раз в 10 секунд, а на второй повешено событие ПриПолученииДанных. На моей платформе второй список каждые 10 секунд вызывает это событие.
---
без контекста трудно понять в чем причина такого поведения.
---
Списки обновляют и чаще!
Вы знаете что там за списки?
---
Это ни фича и ни баг. Это стандартное поведение платформы методов при выводе строки и при получении данных. Проблема - да. Чтобы решить её, то нужно пересматривать все, что у вас делается при выводе строки и при получении данных. Вполне вероятно, что многое можно решить динамическим списком + настройкой оформления динамического списка.

Стандартный рабочий стол кассира (например, если о нем речь) тормозить не будет. А вот неоптимальный/некорректный код при выводе строки и при получении данных - запросто.
---
Ничего что у автора обычное приложение? Динамические списки разработаны для управляемых форм.
---
тем более - пора переходить на управляемые формы