Ладно если на форме практически ничего нет, а если на ней 3 списка по 50000 строк. Тяжеловато будет если все это добро сначала «поедет» на сервер, а потом обратно. Поэтому необходимо было, чтобы форма никуда «не поехала». Решение оказалось достаточно простым:
1. Создаем группу с видом «Страницы» и ставим в свойствах группы ОтображениеСтраниц = «Нет»
2. Внутри группы создаем еще 2. Одну со всеми элементами, а другую без удаляемого с формы поля реквизита.
Все. Пишем простой обработчик кнопы для перехода с одной страницы на другую, например:
&НаКлиенте
Перем НомерСтраницы;
&НаКлиенте
Процедура Команда1(Команда)
НомерСтраницы = 1 — НомерСтраницы;
Элементы.Страницы.ТекущаяСтраница= Элементы[«Страница« + НомерСтраницы];
КонецПроцедуры
НомерСтраницы=0;





а вот эта операция где обрабатывается ?
Элементы.Страницы.ТекущаяСтраница= Элементы[«Страница» + НомерСтраницы]
а то тормозит 🙂
(1) ndacoder, директива у процедуры стоит &НаКлиенте. А почему тормозит, надо спросить клиента =))
Простенько и со вкусом…
Решение оригинальное.
Правда, не совсем понятно вот что. Про свойство «Видимость» прямо сказано: «Изменение свойства на клиенте требует обращения к серверу». Про свойства же «Доступность», «ТолькоПросмотр» говорится: «Изменение свойства на клиенте может потребовать обращения к серверу».
В книге «Разработка управляемого интерфейса» приводится пример, в котором демонстрируется, что при работе со свойством «Доступность» вместо «Видимость» избегаем лишних серверных вызовов.
(4) alexware, мое мнение — надо перестраховаться. Тяжело сказать когда платформа погонит форму на сервер, а когда оставит на клиенте.