Главная » Статьи » "1С" Предприятие |
Скачивать материалы с сайта, могут только зарегистрированные пользователи.
Для регистрации заполните два поля ниже!
Через минуту Вы получите "Гостевой доступ"
Владимир Камышников январь 2003. www.tazoth.ru При программировании на платформе V7 достаточно часто возникает задача создать несколько табличных частей документа (или справочника). Традиционно эта задача имеет несколько решений:
Итак, рассмотрим технологию организации второй табличной части документа (пример в виде маленькой конфигурации приложен к статье, ссылка внизу страницы). Первый шаг – создание служебного документа. Он не должен проводится, не должен задействовать компоненты платформы и, лучше всего, не должен принадлежать никакому журналу. Далее, в табличной части этого документа создаем необходимые реквизиты. Даже те, которые не должны отображаться. В поле "Синоним" указываем то название, которое должно отображаться в колонке. На рисунке 1 имеется реквизит табличной части "ОбъемПриДаннойТемп", который в колонке таблицы будет отображаться как "V при tc". В поле "Комментарий" можно указывать команды форматирования таблицы (необычная фича, да?
После этих операций можно смело утверждать, что с форматированием отображаемой таблицы мы справились. Добавляем в родительский документ реквизит типа "Документ", и связываем его с только что созданным служебным документом. Через этот реквизит впоследствии мы сможем работать с дополнительной табличной частью.
В форму "главного" документа добавляем таблицу значений, при помощи которой будем отображать дополнительную табличную часть, и три кнопки – стандартные "добавить-редактировать-удалить". При желании можно определить и другие операции со строками дополнительной табличной части – копировать строку, и т.д.
Теперь нужно вставить необходимый код в глобальный модуль (см. конфигурацию-пример). Для манипуляций с табличной частью в родительский документ необходимо добавить всго лишь три (!) строки:
В процедуру передаются три параметра – Контекст, реквизит родительского документа, в котором содержится ссылка на служебный документ, и таблица значений на форме, которая отображает табличную часть. При открытии происходит форматирование таблицы и заполнение её данными. При закрытии происходит попытка удаления служебного документа (при необходимости). Второй параметр такой же, как и в первой функции:
Ну и собственно сохранение табличной части. Параметры такие же как и в первой процедуре:
Готово. Ну, за исключением ввода данных в таблицу. Для этого я позаимствовал из типовой конфигурации ИТРП универсальную процедуру ввода в таблицу значений (см. пример). Можно взять какую-нибудь другую универсальную процедуру ввода данных в ТЗ, или написать свою собственную – кому как больше нравится. Вот и все… Восьмерка лишается одного из своих основных козырей? | |||||||||||||
Просмотров: 2248 | | |
Выразить благодарность - Поделиться с друзьями!
Всего комментариев: 0 | |