Сформировав документ, его можно сохранить в файл на диске для отправки по электронной почте, переноса на другой компьютер или флешку и т.

Базовый принцип программирования управляемой формы в 1С
Начнем с небольшого описания понятия «управляемая форма» и связанных концепций платформы 1С. Знатоки платформы могут пропустить этот раздел.
- Толстый клиент (обычный и управляемый режим запуска)
- Тонкий клиент
- Веб-клиент
- Декларативное, а не «по пикселям» описание структуры. Конкретное размещение элементов выполняется системой автоматически при отображении формы.
- Вся функциональность формы описывается в виде реквизитов и команд. Реквизиты – это данные, с которыми работает форма, а команды – выполняемые действия.
- Форма выполняется и на сервере и на клиенте.
- В контексте клиента, недоступны практически все прикладные типы, и соответственно невозможно изменить данные в информационной базе.
- Для каждого метода или переменной формы обязательно должна быть указана директива компиляции, определяющая, место выполнения (клиент или сервер) и доступ к контексту формы.
- &НаКлиенте
- &НаСервере
- &НаСервереБезКонтекста
- &НаКлиентеНаСервереБезКонтекста
Все дальнейшие рассуждения будут о правой части иллюстрации, о том, как структурировать код модуля и какие принципы позволят реализовать эффективное клиент-серверное взаимодействие.
1С обработка табличной части 8.3 с возможностью отладки, скачать | Я
Обозначим проблему
Прошло уже несколько лет как новая версия платформы 1С активно используется и выпущено множество решений (конфигураций) как фирмой 1С, так и ее многочисленными партнерами.
Сложилось ли за это время у разработчиков единое понимание принципов клиент-серверного взаимодействия при создании форм, и изменился ли подход к реализации программных модулей в новых архитектурных реалиях?
Рассмотрим структуру кода (модуль формы) в нескольких формах одной типовой конфигурации и попробуем найти закономерности.
Под структурой будем понимать секции кода (чаще всего это блоки комментариев) выделенные разработчиком для группировки методов и директивы компиляции этих методов.
Пример 1:
Промокоды на Займер на скидки
- Неинформативные слова «Общие, Служебные, Вспомогательные».
- Робкие попытки разделить клиентские и серверные методы.
- Часто методы группируются по интерфейсным элементам «Работа с табличной частью Товары, Контактной информацией».
- Произвольное расположение методов и групп кода. Например, Обработчики событий могут быть в одной форме вверху, в другой внизу, в третьей вообще не выделены и т.д.
- И не будем забывать, что это все в рамках одной конфигурации.
- Да бывают конфигурации, в которых слова «Общие, Служебные, Вспомогательные» всегда находятся на одних и тех же местах но…
Зачем нужна структура кода?
Почему существующий стандарт разработки от фирмы 1С не помогает?
- Минимизируйте число серверных вызовов.
- Максимум вычислений на сервере.
- Неконтекстные вызовы сервера быстрее контекстных.
- Программируйте с учетом клиент-серверного взаимодействия.
- и т.п.
Временное хранилище позволяет оставить на сервере некоторые данные, а вместо них получить короткую строку адрес временного хранилища.

Доступ к табличной части формы через ЭлементыФормы
Табличная часть объекта и табличная часть формы объекта — это не одно и то же!
Для того, чтобы код работал правильно, надо чтобы колонка формы табчасти объекта в свойстве данные ссылалась на реквизит табличной части объекта. Этим определяется тип колонки таб части формы.
То есть должна быть установлена связь между реквизитом табчасти объекта и реквизитом табчасти формы. Форм у объекта метаданных может быть много мы знаем. Табличную часть формы объекта можно получить через объект ЭлементыФормы :
Объект ЭлементыФормы используется для доступа к элементам управления, расположенным на форме, в частности к таб части документа.
Результат для документа Авансовый отчет:
Это табличное поле!! Товары
Количество строк: 4
Женские ботфорты коричневые
Ботинки женские демисезонные
Ботинки женские натуральная кожа
Женские босоножки
Если надо получить значение всех колонок всех строк, то организуем дважды вложенный цикл:
Во внешнем цикле сканируются строки, во внутреннем — колонки:
Такое двойное сканирование удобно использовать для быстрой проверки того, что все колонки таб части формы имеют связь с реквизитами таб части объекта. Если такой связи у какой-либо колонки нет, система сгенерирует ошибку.
1С 8 Управляемые формы – программное изменение
Доступ к табличной части формы через ЭлементыФормы
Табличная часть объекта и табличная часть формы объекта — это не одно и то же!
Для того, чтобы код работал правильно, надо чтобы колонка формы табчасти объекта в свойстве данные ссылалась на реквизит табличной части объекта. Этим определяется тип колонки таб части формы.
То есть должна быть установлена связь между реквизитом табчасти объекта и реквизитом табчасти формы. Форм у объекта метаданных может быть много мы знаем. Табличную часть формы объекта можно получить через объект ЭлементыФормы :
Объект ЭлементыФормы используется для доступа к элементам управления, расположенным на форме, в частности к таб части документа.
Результат для документа Авансовый отчет:
Это табличное поле!! Товары
Количество строк: 4
Женские ботфорты коричневые
Ботинки женские демисезонные
Ботинки женские натуральная кожа
Женские босоножки
Если надо получить значение всех колонок всех строк, то организуем дважды вложенный цикл:
Во внешнем цикле сканируются строки, во внутреннем — колонки:
Такое двойное сканирование удобно использовать для быстрой проверки того, что все колонки таб части формы имеют связь с реквизитами таб части объекта. Если такой связи у какой-либо колонки нет, система сгенерирует ошибку.
По ходу чтения публикации можно создать свою обработку, для ленивых же, меняю шаблон 1С обработки табличной части с возможностью отладки кода на ссылку в соц.

Примечания и работа с ячейками
Мы можем выполнять с ячейками любые действия, как с обычными таблицами в Excel или таблицами в документах Word – вставлять и удалять строки, объединять ячейки, скрывать и пр. («Файл-Таблица-Ячейки»).
Для удобства при работе с табличным документом можно пользоваться контекстным меню, нажав на ячейке или выделенному фрагменту правой кнопкой мышки. Например, выбрав команду «Раздвинуть», мы добавляем строки выше текущего положения. Здесь же мы можем объединить или разбить ячейки, удалить, очистить, настроить высоту строк, выбрав соответствующие команды.
Табличные документы в 1С 8.3: загрузка и изменение
Макет печатной формы документа
Табличные документы формируются на основе макета, который представляет собой шаблон для формирования печатной формы. В него можно добавлять рисунки, логотипы, диаграммы, сводные таблицы.
В каждом документе имеется макет его печатной формы. Открыв печатную форму, нажав кнопку «Еще» и выбрав команду «Изменить макет», мы самостоятельно можем внести в него коррективы, не прибегая к помощи программиста. Теперь такая возможность доступна в пользовательском режиме 1С.
Макет печатной формы документа «Счет». Мы видим, что в одних ячейках содержится только текст, в других – имена параметров, которые необходимо будет задать при заполнении документа.
С помощью кнопки на панели инструментов и «Еще», выбрав нужный раздел, мы можем произвести изменение табличного документа 1С 8.3.
Их можно сделать горизонтальными или вертикальными, регулируя при этом расположение итогов в группировке для первых сверху или снизу, для вторых, соответственно справа или слева.

С обращением к серверу
Отличия в реализации подбора будут в этом случае только в передаче данных в документ и, затем, обработки подобранных товаров в документе. Вот таким образом будет выглядеть команда передачи данных в документ из подбора:
Теперь алгоритм обработки выбора элемента формы документа «Товары» изменится следующим образом:
Этот подход требует вызова сервера при передаче данных между формами, однако, он более гибкий как с точки зрения обработки подобранных данных, так и с точки зрения производительности.
Вместо выводов
По ссылке Вы можете скачать тестовую конфигурацию с примером из статьи.
Вывод табличного документа на печать через стандартную общую форму печати. БУ 2
- Большие объемы данных могут передаваться некорректно. По опыту работы с управляемыми формами скажу, что очень часто возникали ошибки типа «Ошибка передачи данных», если размер таблицы был больше мегабайта.
- Если передаваемые данные требуют обработки (получение остатков товара, цен и т.д.), то все эти действия необходимо выполнять на серверной стороне. Поэтому было бы правильней в форме подбора поместить их на серверную сторону, а уже на стороне документа обработать и и поместить в объект документа.
Микрофинансирование → Микрокредиты → Специальные предложения → Скачать файлы → Обзор Быстроденег → Предмет договора → Ответственность сторон → Отличные наличные→ Экспресс займы