Обработка Заполнения Табличной Части 1С 8.2

Posted on

Aug 31, 2016 - Обработка заполнения табличных частей (обычные формы). После перезапуска 1С в меню «Заполнить» выбранной табличной части. Nov 27, 2009 - Зарегистрированная таким образом обработка табличной части становится доступной в списке обработок заполнения указанной. Jan 11, 2011 - Внешние печатные формы и обработки создаются. Произвольная обработка; Обработка для заполнения табличных частей объектов; Внешняя. Имя табличной части, для которой вызвана обработка;.

  1. Внешняя Обработка Заполнения Табличной Части Документа 1с 8.2
  2. Создание Обработки Заполнения Табличной Части 1с 8.2

С переходом на управляемые формы изменился шаблон создания внешних обработок. Теперь для создания подключаемой внешней обработки необходимо описать несколько процедур и заполнить ряд параметров подключения. Хотелось бы раскрыть этот вопрос подробно, поэтому в публикации будет создана 1С обработка табличной части 8.3 для подключения к конфигурациям на управляемых формах и исходник выложен в конце публикации.

Мысль на написание этой статьи мне пришла в голову после того, как потребовалось сделать простейшую обработку в табличной части, но при этом не хотелось снимать конфигурацию с поддержки. Трудности начались на этапе отладки, когда появилась необходимость посмотреть значения переменных и т.д., но после подключения обработки в 1С приложении связь терялась и обработчик не останавливался на точках останова. Стандартных решений, как можно делать отладку обработчиков табличных частей 1С, я не нашел (если вы знаете, прошу написать в комментариях), поэтому пришлось изобретать своё решение. Но давайте все по порядку, пройдем весь путь от создания до ввода в работу Создание обработки табличной части 1С и описание необходимых сведений В конфигураторе 1С создаем новую обработку, вводим название и сохраняем. Для комфортной отладки процедур и функций обработки, необходимо организовать выбор объекта в форме обработки и создать кнопку, по нажатию которой обработка могла бы исполнять свой код в режиме отладки. Для этого создаем реквизит с наименованием «Ссылка» и указываем тип объекта, у которого нам необходимо обработать табличную часть. В нашем примере это будет справочник «Спецификации» и обрабатывать мы будем табличную часть «Состав».

Далее переходим в модуль объекта и, в соответствии с, вставляем обязательную для внешних обработок функцию СведенияОВнешнейОбработке. КонецПроцедуры Соответственно, при написании собственной обработки, структуру ПараметрыРегистрации необходимо заполнять своими значениями и при добавлении команды необходимо указать свои Представление и Идентификатор команды. Эти значения будут подставлены автоматически при добавлении обработки в коллекцию внешних отчетов и обработок 1С. 1С обработка табличной части в режиме отладки Все дело в том, что после подключения внешних обработок в конфигурации 1С, они становятся недоступной для отладки. Что бы решить эту проблему, создаем форму обработки и размещаем на ней созданный ранее реквизит «Ссылка» — таким образом мы сможем выбирать объект 1С. И так же создаем команду, с помощью которой мы будем обрабатывать выбранный объект. Описываем действие команды.

КонецПроцедуры После того, как подключенная 1С обработка табличной части будет запущена, 1С Предприятие будет исполнять процедуру ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначения) в модуле формы. Поэтому нашей командой мы так же будем выполнять эту процедуру, только на объекте, выбранном в реквизите «Ссылка» на форме. При выполнении команды проверим идентификатор формы и поскольку операция меняет данные, то перед выполнением обработки табличной части зададим вопрос о целесообразности этой процедуры (а то может быть пользователь случайно активировал команду). &НаКлиенте Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначения) Экспорт Если ИдентификаторКоманды = 'ОбработкаТЧСоставУСпецификации' Тогда Режим = РежимДиалогаВопрос.ДаНет; Оповещение = Новый ОписаниеОповещения('ПослеОтветаНаВопросОЗаполненииТЧ', ЭтаФорма, Параметры); ПоказатьВопрос(Оповещение, 'Заполнить табличную часть?'

КонецПроцедуры После получения положительного ответа, проверяем, кто ВладелецФормы и узнаем, откуда запущена обработка табличной части:. из формы объекта (после её добавления в конфигурации 1С в «Дополнительных отчетах и обработках»); в этом случае передаем копию объекта формы на сервер для обработки табличной части. из созданной нами формы обработки (при её открытии через «Файл-Открыть» и выполнении команды «Команда1» на форме); в этом случае открываем форму элемента с поиском по ссылке объекта, выбранного в форме и так же передаем копию объекта формы на сервер для обработки табличной части.

Внешняя Обработка Заполнения Табличной Части Документа 1с 8.2

Обработанные данные в последствии будут скопированы снова в объект форы через команду КопироватьДанныеФормы. На сервере мы можем обработать табличную часть объекта по необходимому алгоритму.

Что бы не усложнять пример, наша 1С обработка табличной части 8.3 будет всего лишь очищать табличную часть. А вообще можно пробежаться по списку табличной части и изменить любые реквизиты в соответствии с необходимой логикой. КонецФункции Всё! Обработка табличной части 1С готова, давайте её тестировать. Тестирование 1С обработки табличной части 1. Запустим обработку в режиме отладки через Файл-Открыть В модуле формы ставим точку останова на строчке серверной процедуры ЗаполнитьТЧСервер. Запускаем обработку на выполнение через команду на форме «Команда 1».

Пример

Наша точка останова останавливает выполнение программы в заданном месте, что дает возможность обратиться к Объекту. Таким образом мы можем посмотреть необходимые реквизиты и обработать табличную часть переданного объекта и другие реквизиты как необходимо.

После выполнения кода в режиме 1С Предприятие, откроется форма элемента выбранного объекта с обработанными реквизитами. Добавляем нашу обработку в дополнительных отчетах и обработках в 1С конфигурации. Все реквизиты описания обработки заполнятся автоматически, как мы указывали в процессе разработки. В реквизите «Размещение» указываем тип изменяемого объекта (в нашем примере это справочник «Спецификации»). Нажимаем записать и закрыть. После этого в форме справочника «Спецификации» появится кнопка «Заполнить» и в ней команда — «Обработка табличной части Состав у справочника Спецификации». При выполнении команды табличная часть «Состав» в форме справочника «Спецификации» очистится.

Внешняя

Создание Обработки Заполнения Табличной Части 1с 8.2

А это значит, что наша 1С обработка табличной части 8.3 отработала корректно. По ходу чтения публикации можно создать свою обработку, для ленивых же, меняю шаблон 1С обработки табличной части с возможностью отладки кода на ссылку в соц.

Сетях: Если у вас возникли вопросы, вы можете задать их в комментариях или на форуме сайта. Не забудьте вступить в наши группы в соц. Сетях и быть в курсе свежих публикаций. Желаю удачи и хорошего настроения! Фізика в побуті реферат.