Доброго времени суток.

Подскажите пожалуйста, есть ли "аналоги" событий на событие ПриСозданииНаСервере(), есть небольшой код связанный с циклом но не суть, в который я открываю через событие ПриСозданииНаСервере(), но очень долго работает код. Я хочу чтобы при нажатии на вкладку документации запускался мой код.
---
писать что-то специально лень, нашел первое попавшееся в конфе в которой работаю:

```1c
    &НаКлиенте
    Процедура ГруппаСтраницыПриСменеСтраницы(Элемент, ТекущаяСтраница)

    Если ТекущаяСтраница = Элементы.СтраницаВходящиеПлатежи Тогда
    Элементы.ПоступленияДенежныхСредств.Обновить();

    ИначеЕсли ТекущаяСтраница = Элементы.СтраницаИсходящиеПлатежи Тогда
    Элементы.СписанияДенежныхСредств.Обновить();

    КонецЕсли;

    КонецПроцедуры
```
---
небольшой код связанный с циклом
Добавляешь реквизит формы булево Расчёт
При смене страницы на Документации если Расчёт = Ложь - запускаешь процедуру с циклом пересчёта на сервере и ставишь Расчёт = Истина

Всё. Пересчёт не будет при создании на сервере, а будет при первом заходе на закладку

П.С. Сам цикл тоже наверняка можно оптимизировать. Если бы увидели его - дали бы дельный совет.

Код примерно такой, как намекнул в (41) -AI-:

```1c
    &НаКлиенте
    Процедура ГруппаСтраницыПриСменеСтраницы(Элемент, ТекущаяСтраница)
    Если ТекущаяСтраница = Элементы.Документация И Расчёт = Ложь Тогда
    ВызовПересчётаНаСервере();
    Расчёт = Истина
    КонецЕсли
    КонецПроцедуры
```
---
есть небольшой код связанный с циклом но не суть

Так может всё дело в коде, откуда мы знаем, что там. Сделайте замеры проверьте, где проседает
---
Почему никто не обратил внимание на другие события их там полно. Здесь нужен человек который разбирается во всех событиях, я то теперь начал изучать события с сегодняшнего дня, но сейчас помогите с этим заданием
---
Оптимизируйте код. Иначе какая разница в каком событии оно будет тормозить.
Если самостоятельно не можете, включите замер производительности и покажите результаты замера и приведите код.
---
Вы хотите, чтобы кто-то написал обо всех событиях?

Обо всех событиях можно прочитать в Синтаксис-помощнике

А какое событие надо, зависит от поставленной задачи.

"Я хочу что-то, но это будет секретом, помогите"
---
небольшой код связанный с циклом
Добавляешь реквизит формы булево Расчёт
При смене страницы на Документации если Расчёт = Ложь - запускаешь процедуру с циклом пересчёта на сервере и ставишь Расчёт = Истина

Всё. Пересчёт не будет при создании на сервере, а будет при первом заходе на закладку

П.С. Сам цикл тоже наверняка можно оптимизировать. Если бы увидели его - дали бы дельный совет.

Код примерно такой, как намекнул в (41) -AI-:

```1c
    &НаКлиенте
    Процедура ГруппаСтраницыПриСменеСтраницы(Элемент, ТекущаяСтраница)
    Если ТекущаяСтраница = Элементы.Документация И Расчёт = Ложь Тогда
    ВызовПересчётаНаСервере();
    Расчёт = Истина
    КонецЕсли
    КонецПроцедуры
```
---
Не совсем понял в чём собственно проблема...
Но можно написать экспортную процедуру в модуле объекта и вызывать её из любого события...
---
Есть код(2-ое фото документация) она выполняется ПриСозданииНаСервере() из-за этого тормозит время открытия, а я хочу чтобы вычисления происходили тогда когда пользователь зашел в группу документация, т.е при нажатии.
---
На форме выделите элемент формы с видом "Страницы". У него будет событие "ПриСменеСтраницы"
---
У него будет событие "ПриСменеСтраницы"

Только что убрал фото ПриСменеСтраницы, походу зря, пробовал вычисления происходят всегда при переходе, например вы перешли в документацию происходит вычисления, перешли в карточку происходит вычисления, снова перешли документацию происходит вычисления. Так добавляются новые новые данные поверх старых, мне так не нужно, если только как-то остановить вычисления до одного.
---
вычисления происходят всегда при переходе
Так вы при смене страницы должны понять по имени страницы - нужны вам вычисления или нет.
+ момент при повторном входе на страницу документы - нужно предусмотреть нужен ли повторный перерасчет. Мб эти данные уже хранятся на форме?
---
ну так сделайте проверку на имя текущей страницы
---
и очищайте всегда перед расчетом ваши значения или проверки какие то делайте по необходимости...
---
Начало жестко тормозить ПриСменеСтраницы(). Я работаю через расширение и событие выполняется после, т.е. каждый раз после смены страницы выполняется и мой код после:(
---
Нет ли похожего на событие команды ПриНажатии? 0_О
---
может попытаться оптимизировать код, чтоб не тормозило....
---
По уму их можно вообще отправить в фоновое задание, пусть там считает... Но начинать надо с корректного кода в обычных обработчиках. Правильный ответ в (7)
---
фоновое задание
Мало того, что я не разбираюсь во всех событиях и их тонкостях, так еще и не известное мне словосочетание "фоновое задание" добавилось. Спасибо
---
Но начинать надо с корректного кода в обычных обработчиках
Ну тут да.. Если даже правильно условия задать по страницам - все равно будет тормозить, но уже просто при переключении страницы =)
Поэтому сначала "замер производительности". Сейчас ТС еще и эту фразу себе законспектирует =)
---
Судя по всему не в коня корм))
---
фоновое задание это жестоко для человека который хочет создать на сервере, форма уже откроется и запишется и закроется, а фоновое задание может продолжать жить дальше само собою... отличная идея!
---
И че? Фоновое запускается на Клиенте ПриСменеСтраницы(). После закрытия формы фоновое продолжится, но после завершения автоматически убьется, поскольку результат будет к временному хранилищу этой формы. Так она закрыта, то хранилище само очиститься.
---
думаю это ответ на другой вопрос, у автора вопрос как выполнить код, а не как запустить выполнения кода и забить на результат в случае чего
---
Вероятно неоптимальный код
---
Сам ты вероятно неоптимальный. Модератор удали это сообщение
---
Сам ты вероятно неоптимальный
Ну зачем же так? Я бы тоже в первую очередь на код взглянул.
ИМХО пользователь без лагов должен переключаться по вкладкам.
---
Не вырывайте из контекста
---
Не вырывайте из контекста
Тут, думаю, контекст не важен. Это просто хамство.
---
Думаю хамство это когда модератор удаляет твое сообщение
---
хамство это когда модератор удаляет твое сообщение
Вы идете к успеху
---
Ну вот вы используете сарказм, а это скрытое хамство, все я на вас обиделся
---
Хамство это эволюционный биологический механизм. Дело в том что человек затрачивает на думание двадцать пять процентов энергии от всей энергии вашего организма - это очень энергозатратное занятие. Эволюция придумала защитный механизм просто берешь и обижаешься, и не нужно затрачивать свою энергию. В защитный механизм входит и агрессия, и лень, и выпендрёж(доминантность) и т.д.. Хотите могу по подробнее рассказать?
---
Хотите могу по подробнее рассказать?
Не стоит - сразу переходите в режим энергосбережения. А то похудеете на 25% - зачем нам такие жертвы.. Пусть и ради сообщества..
---
Не стоит
Ради доминантности можно и потерпеть. Вот видишь ты давно уже забыл про задачу тебе важно выпендриться
---
Тебе не светит, не стоит тратить энергию на переживания по этому поводу.
---
Сообщение было скрыто модератором.
---
Что происходит с этим человеком? О_о
Ха-ха-ха
---
Сроки жмут.
---
Что происходит с этим человеком?
Доминантность наверное... или ресурсы экономит аж 25% от массы тела. Интересно, это в пересчете на массу угля наверное.
---
То есть тебе выгрузили ФУРУ комментариев про неоптимальный код, а заметил ты только мой? И посчитал его оскорбительным?
---
Не обижайся я любя.
---
Если ты ищешь общения в таком формате, то тебе на миста.ру путь
---
Там намного дружелюбнее, зря вы наговариваете.
---
Там намного дружелюбнее
Тут бы я поспорил!
Скорее уж там дружат против кого-то! Наверное матерые 1с-ники дружат против начинающих =)
---
миста это место где учат, а здесь сами учатся, по заданному вопросу сам подумай, зачем разработчикам создавать события которые будут дублировать, если бы ты сказал задачу, тебе бы ответили сразу правильно использовать это событие или нет, если ты взрослый самостоятельный учись сам
---
писать что-то специально лень, нашел первое попавшееся в конфе в которой работаю:

```1c
    &НаКлиенте
    Процедура ГруппаСтраницыПриСменеСтраницы(Элемент, ТекущаяСтраница)

    Если ТекущаяСтраница = Элементы.СтраницаВходящиеПлатежи Тогда
    Элементы.ПоступленияДенежныхСредств.Обновить();

    ИначеЕсли ТекущаяСтраница = Элементы.СтраницаИсходящиеПлатежи Тогда
    Элементы.СписанияДенежныхСредств.Обновить();

    КонецЕсли;

    КонецПроцедуры
```