Создание обработки заполнения табличной части 1. С 8. 1. Постановка задачи. В этой статье рассмотрим процесс написания простейшей внешней обработки заполнения табличной части в 1. С 8 для конфигураций, использующих обычное приложение. Для примера возьмем такую задачу: “В конфигурации 1.
С: Бухгалтерия 2. Товары документа Реализация товаров и услуг, данные для заполнения взять из табличной части Товары документа Поступление товаров и услуг”. Таким образом нам необходимо заполнить товары реализации на основании товаров поступления, такая задача довольно часто встречается в реальной практике программиста 1. С. 2. Создание внешней обработки.
Зайдем в 1. С 8 в режиме Конфигуратор. При помощи меню Файл - > Новый или пиктограммы Новый документ создадим новую внешнюю обработку. В поле Имя укажем: “Простейшее. Заполнение. Табличной. Части” и сохраним внешнюю обработку на жесткий диск используя меню Файл - > Сохранить или пиктограмму Сохранить или сочетание клавиш Ctrl + S.
Выделив ветку Реквизиты в дереве метаданных обработки и нажав кнопку Добавить(кнопка с зеленым плюсом) создадим новый реквизит внешней обработки — Документ. Поступления, выберем для него тип Документ. Ссылка. Поступление. Товаров. Услуг, этот реквизит нужен нам для выбора документа Поступление товаров и услуг, на основании которого будет заполняться реализация.
Для выбора документа поступления нам понадобится отдельная форма. Выделив ветку Формы и используя ту же кнопку — Добавить создадим форму внешней обработки. Откроется окно конструктора формы , на первой странице конструктора никаких изменений делать не нужно, поэтому просто нажмем кнопку Далее. На второй странице конструктора нам необходимо выбрать реквизит Документ. Поступления(для того что бы он появился на создаваемой форме) и нажать кнопку Готово.
Обработка заполнения табличной части 1С 8.3 управляемые формы на примере. Бесплатный видео самоучитель по 1С Бухгалтерии 8.3 и 8.2; . Подскажите пожалуйста: Есть процедура заполнения табличной части в модуле объекта, как перенести ее во внешнию обработку . Как создать обработку по заполнению табличной части. Обучение 1С - программированию. В модуле обработки написала процедуру : Процедура Инициализировать(Объект, ИмяТабличнойЧасти = Неопределено. Обработка заполнения табличной части документа - 1С. Здравсвуйте.
После этого откроется созданная форма, нам необходимо что бы на ней пользователь выбирал документ поступления, и закрывал ее. Поэтому при нажатии кнопки Выполнить форма должна просто закрываться. Для того что бы реализовать это, выделим кнопку Выполнить, кликнем по ней правой кнопкой мыши и выберем пункт Свойства. В свойствах кнопки, в строке Действие выберем действие — Закрыть.
На этом работа с формой завершена, закроем ее. Программирование. Приступим к программированию обработки заполнения табличной части. Инструкция По Охране Труда При Эксплуатации Стиральной Машины В Доу.
Перейдем в Модуль объекта внешней обработки(на нижней панели обработки кнопка Действия - > Открыть модуль объекта). В нем нам необходимо создать экспортную процедуру Инициализировать. Процедура Инициализировать(Объект, Имя. Табличной. Части = Неопределено, Табличное. Поле. Объекта = Неопределено)Экспорт. Конец. Процедуры. Обратите внимание, что процедура Инициализировать, а так же все ее параметры, являются обязательными для внешней обработки заполнения табличной части, если вы ее не создадите или не укажите все параметры, ваша обработка просто не будет работать.
Теперь приступим к написанию программного кода. В первую очередь создадим переменную для табличной части документа Реализация товаров и услуг, которую мы будем заполнять. Табличная. Часть = Объект. Таким образом эта строчка кода получает табличную часть заполняемого документа по ее имени.
Постановка задачи. В этой статье рассмотрим процесс написания простейшей внешней обработки заполнения табличной части в 1С 8 . Внешняя обработка заполнения табличной части документа "Перечисление. Платформы: 1С:Предприятие 8.3, 1С:Предприятие 8.2, . Например, для заполнения табличной части документа. Приемы обработки больших данных в 1С. Под 8.2 не работает. 1C 8.x Обработка заполнения табличной части документа - 1С. Здравсвуйте. 1С 8.2 Есть два документа ТоварнаяНакладная.
Нам необходимо что бы пользователь выбрал документ Поступление товаров и услуг, поэтому напишем код открытия формы выбора документа. Для начала получим эту форму в переменную, используя метод внешней обработки Получить. Форму(< Форма> , < Владелец> , < Ключ.
Уникальности> ). Нам достаточно заполнить только первый параметр этого метода, передав туда строку с именем нашей формы. Форма. Выбора. Поступления = Получить. Форму(. Если после проверки Документ. Поступления окажется пустым, то дальнейшее выполнение обработки не имеет смысла, и его следует прервать. Если. НЕ Значение.
Заполнено(Документ. Поступления) Тогда.
Сообщить(. Процедура Сообщить выводит указанный текст в окно сообщений 1. С 8. Ключевое слово Возврат прерывает выполнение процедуры. Приступим к написанию запроса, который будет выбирать данные табличной части Товары документа Поступление товаров и услуг.
Создадим новый запрос: Запрос = Новый Запрос. В параметр запроса передадим ссылку на выбранный нами документ поступления, этот параметр понадобится нам для того что бы наложить условие на документ в запросе. Запрос. Установить. Параметр(. Писать текст запроса вручную не рекомендуется, это не эффективно и отнимает кучу времени. Для начала напишем строку: Запрос. Текст = . После этого появится предложение создать новый запрос, нажмем кнопку “ОК”. Откроется окно конструктора, в левой его части расположены все доступные таблицы базы данных, нам необходим документ Поступление.
Товаров. Услуг. Найдем его и раскроем при помощи символа “+”, выберем табличную часть Товары и перетащим ее во вторую часть экрана конструктора, которая называется Таблицы(Также переместить нужную таблицу можно при помощи кнопки “> ”). Теперь раскроем по “+” выбранную нами таблицу(Поступление. Товаров. Услуг. Товары) и перетащим необходимые для нашего заполнения табчасти поля в третью часть экрана конструктора, которая так и называется — Поля. Все доступные поля выбирать не будем, ограничимся таким набором: Номенклатура, Количество, Цена, Сумма, Ставка. НДС, Сумма. НДС. Так как нам нужны данные только одного документа поступления(который мы выбрали перед началом заполнения), то в на закладке “Условия” наложим условие на ссылку документа при помощи переданного нами параметра.
Создание текста запроса в конструкторе на этом завершено, нажмем кнопку “ОК”. В итоге у нас получился следующий текст запроса: Запрос.
Текст = . Теперь можно приступать к заполнению табличной части Товары нашей реализации. Но прежде чем заполнять данные следует ее очистить, на тот случай если там уже есть какие- то строки. Табличная. Часть. Очистить(). При помощи цикла Для каждого обойдем таблицу значений с результатами запроса. Для Каждого Элемент. Результата из Результат Цикл. Конец. Цикла. В этом цикле создадим и заполним строки табличной части документа Реализация товаров и услуг.
Создать новую строку мы можем при помощи переменной Табличная. Часть, через которую можно совершать с ней любые действия. Новая. Строка. ТЧ = Табличная. Часть. Добавить(). Заполним созданную строку таб. Для этого воспользуемся экспортнойпроцедурой Заполнить.
Счета. Учета. ВСтроке. Таб. Части из модуля объекта документа Реализация товаров и услуг. Вызовем ее при помощи параметра Объект(следует заметить,что мы можем вызывать только экспортные процедуры из модуля объекта документа). Объект. Заполнить. Счета. Учета. ВСтроке. Таб. Части(Новая.
Строка. ТЧ, Имя. Табличной. Части, Истина). На этом программирование заполнения табличной части для 1. С 8 завершено. Обработку можно использовать. Полный текст процедуры Инициализировать, выглядит так: Процедура Инициализировать(Объект, Имя. Табличной. Части = Неопределено, Табличное. Поле. Объекта = Неопределено)Экспорт. Табличная. Часть = Объект.
Отладка. Довольно часто требуется отлаживать код, который вы пишите. Для того что бы отладить обработку заполнения табличной части в 1.
С 8 создадим у нее реквизит Ссылка. На. Объект типа Документ. Ссылка. Реализация. Товаров. Услуг. Он нужен нам для того что бы при отладке выбрать документ реализации, который мы будем заполнять. Далее необходимо создать форму для отладки и разместить там созданный реквизит Ссылка. На. Объект, процесс создания формы отладки не отличается от создания формы выбора документа поступления, поэтому детально останавливаться на нем не будем. После того как форма будет создана, перейдем в ее модуль.
Там найдем автоматически созданную процедуру Кнопка. Выполнить. Нажатие. Эта процедура отрабатывает при нажатии кнопки Выполнить. Вызовем из нее процедуру Инициализировать, которая находится в модуле обработки, в параметры передадим объект документа Реализация товаров и услуг(который мы получим из реквизита Ссылка. На. Объект) и строку с названием заполняемой табличной части(в нашем случае Товары). Процедура Кнопка. Выполнить. Нажатие(Кнопка).
Инициализировать(Ссылка. На. Объект. Получить.