1. Главная страница » Компьютеры » 1С дополнительные реквизиты в табличной части

1С дополнительные реквизиты в табличной части

Автор: | 16.12.2019

Рассмотрим на примере добавление дополнительных сведений и дополнительных реквизитов к новому документу пр_ДопСведения типовой конфигурации УТ 11.1.2.10.

Потребуются изменения следующих объектов:

  1. Новый документ (добавление табличной части ДополнительныеРеквизиты)
  2. Справочник НаборыДополнительныхРеквизитовИСведений (добавление предопределенного элемента с наименованием по шаблону Документ_ )
  3. Общая команда ДополнительныеСведенияКоманднаяПанель (добавление типа параметра команды)
  4. Форма нового документа (добавление группы ГруппаДополнительныеРеквизиты; доработка модуля формы документа)

Подробнее рассмотрим этот процесс на примере.

Часть 1. Изменение нового документа.

Для хранения значений дополнительных реквизитов в документ пр_ДопСведения добавляем табличную часть ДополнительныеРеквизиты, можно скопировать ее, например, из справочника Номенклатура.

Для хранения значений дополнительных сведений ничего менять не нужно, т.к. в измерении Объект регистра сведений ДополнительныеСведения уже содержится тип ДокументСсылка, это значит, что значением поля Объект может быть любой документ (рис. 1):

Рис. 1. Тип измерения Объект регистра сведений ДополнительныеСведения

Часть 2. Изменение справочника НаборыДополнительныхРеквизитовИСведений.

Далее в справочник НаборыДополнительныхРеквизитовИСведений добавляем предопределенный элемент с наименованием Документ_пр_ДопСведения (рис.2):

Рис. 2. Предопределенный элемент справочника НаборыДополнительныхРеквизитовИСведений

Часть 3. Изменение общей команды ДополнительныеСведенияКоманднаяПанель.

Далее для того, чтобы на форме документа появился значок для перехода к дополнительным сведениям, в общей команде ДополнительныеСведенияКоманднаяПанель добавляем в Тип параметра команды тип ДокументСсылка.пр_ДопСведения (рис. 3):

Рис. 3. Добавление типа в общую команду ДополнительныеСведенияКоманднаяПанель

Часть 4. Изменение формы нового документа.

Для реализации функционала дополнительных реквизитов добавляем на форму документа пр_ДопСведения группу ГруппаДополнительныеРеквизиты, ее можно скопировать из формы элемента справочника Номенклатура (рис. 4):

Рис. 4. Добавление группы на форму документа

Далее в модуле формы документа определяем процедуры (можно скопировать из модуля формы элемента справочника Номенклатура):

  1. Процедура ПриСозданииНаСервере

Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

НастроитьЭлементыДополнительныхРеквизитов();

УправлениеСвойствами.ПриСозданииНаСервере(ЭтаФорма, Объект, "ГруппаДополнительныеРеквизиты");

  1. Процедура ОбработкаОповещения

Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)

Если УправлениеСвойствамиКлиент.ОбрабатыватьОповещения(ЭтаФорма, ИмяСобытия, Параметр) Тогда

ОбновитьЭлементыДополнительныхРеквизитов();

  1. Процедура ОбновитьЭлементыДополнительныхРеквизитов

НастроитьЭлементыДополнительныхРеквизитов();

  1. Процедура НастроитьЭлементыДополнительныхРеквизитов

Для Каждого Элемент Из Элементы.ГруппаДополнительныеРеквизиты.ПодчиненныеЭлементы Цикл

Если Элемент.Вид = ВидПоляФормы.ПолеВвода Тогда

Если Элемент.МногострочныйРежим <> Истина Тогда

ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеФлажка Тогда

  1. Процедура Подключаемый_РедактироватьСоставСвойств
  1. Процедура ПередЗаписьюНаСервере

Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)

Теперь в пользовательском режиме появилась возможность добавлять дополнительные сведения и дополнительные реквизиты к новому документу пр_ДопСведения (рис. 5):

Статьи и бесплатные видеоуроки о работе с программами 1С Бухгалтерия, 1С Зарплата и Управление Персоналом, 1С Управление Торговлей для бухгалтеров

Я уже писала о том, как пользователю самостоятельно добавить реквизит без изменения типовой конфигурации. Но в конфигурациях, написанных под управляемое приложение1С Бухгалтерия Предприятия редакция 3.0 и 1С Управление Торговлей редакция 11) подсистему хранения дополнительных реквизитов существенно доработали и даже называются они теперь по-другому (в предыдущих редакциях это называлось «Дополнительные свойства и категории«, а теперь — «Дополнительные реквизиты и сведения» ).

Читайте также:  Cash что это значит

Работать с подсистемой дополнительных реквизитов и сведений стало существенно удобнее, необходимо только разобраться в порядке их ввода и настройки.

Для чего предназначены дополнительные реквизиты и дополнительные сведения.

Реквизиты хранятся в самом объекте, в отдельной табличной части. После того, как администратор настроил новый реквизит, он появляется на форме объекта, и пользователю можно заполнять его. Дополнительные реквизиты предназначены для описания свойств объектов, являющихся их неотъемлемой частью. Вводятся дополнительные реквизиты при редактировании объекта, они доступны для редактирования тем же пользователем, которым доступен и сам объект.

Дополнительные сведения предназначаются для хранения сведений, не являющихся неотъемлемой частью объекта. Дополнительные сведения вводятся в отдельном окне, которое вызывается при нажатии кнопки «Дополнительные сведения». Эта кнопка находится в верхней панели инструментов форм элементов справочников и документов, для которых доступен сервис дополнительных сведений, а также в формах списков документов и справочников. Дополнительные сведения доступны для просмотра пользователям, которым запрещен доступ к самому объекту.

Настройка дополнительных реквизитов и сведений.

Для использования функционала дополнительных реквизитов и сведений необходимо установить флажок «Использовать дополнительные реквизиты и сведения» в настройках программы (раздел «Администрирование», панель действий «Настройки», пункт «Настройки программы», закладка «Дополнительные реквизиты и сведения»).

Как добавить новый реквизит.

Назначать объектам конфигурации (справочникам и документам) новые реквизиты и сведения может пользователь с полными правами.

Для этого необходимо войти в список «Наборы доп. реквизитов и сведений» в разделе «Администрирование», подраздел «Формы» в панели навигации.

Откроется список объектов, которым можно назначать дополнительные реквизиты и сведения. Это все документы (для них можно вводить дополнительные сведения) и часть справочников (для них можно ввести как реквизиты, так и сведения). Новый объект в набор ввести нельзя.

Для объекта-документа форма набора выглядит следующим образом:

В форме имеется табличная часть для набора дополнительный сведений к документу.

Если открыть объект-справочник, то можно увидеть, что его форма набора отличается:

Как видим, здесь добавилась табличная часть с набором реквизитов.

Введем новые дополнительные реквизиты к справочнику «Сотрудники».

Для этого нажимаем кнопку «Подбор» над табличной частью «Дополнительные реквизиты».

Откроется форма подбора дополнительных реквизитов. Если в базу уже ранее вводились дополнительные реквизиты для других объектов, то они отобразятся в этой форме и будут доступны для выбора. Если их нет — создаем новый при помощи кнопки «Создать».

Читайте также:  Bragi the headphone отзывы

Введем дополнительный реквизит «Район проживания».

Тип значения — «Значение свойства объектов». Выбрать тип значения можно из следующего перечня:

Можно задать составной тип данных.

При установке флажка «Заполнять обязательно» элемент справочника с незаполненным реквизитом «Район проживания» не запишется.

Ниже можно задать всплывающие подсказки, комментарий, представление нашего реквизита.

После заполнения всех нужных нам значений нажимаем на кнопку «Записать и закрыть» и добавляем наш новый реквизит в набор:

На этом этапе можно задать «обязательность» нашего реквизита относительно справочника «Сотрудники»:

Если оставить «По умолчанию» — то «обязательность» для справочника будет такая же, как и в описании самого реквизита.

Теперь записываем и закрываем набор для справочника «Сотрудники».

Заходим в справочник «Сотрудники» и видим, что в форме элемента появился подраздел «Дополнительные данные» с обязательным для заполнения реквизитом «Район проживания».

На этом этапе можно ввести перечень районов и выбрать один из них для нашего сотрудника.

Теперь при формировании отчетов мы можем вывести дополнительное поле «Район проживания».

О том, как это делается, и о настройке дополнительных сведений я расскажу в одной из следующих статей.

Мы научились вводить дополнительные реквизиты справочников на примере 1С Бухгалтерия редакция 3.0. Точно таким же образом вводятся дополнительные реквизиты в 1С Управление Торговлей редакция 11.

Если статья Вам понравилась, Вы можете порекомендовать ее своим друзьям:

3 thoughts on “ Как создать дополнительный реквизит в 1С Бухгалтерия редакция 3.0 ”

У меня почему то в наборе только папки — договор контрагент, должность, зарплатный проект, контактное лицо ну и т.д. — что делать в данной ситуации?

Глядя на Ваш скриншот, вижу, что курсор установлен на справочнике «Сотрудники», а к нему доп. реквизитов у Вас не заведено. Посмотрите внимательно на список справочников: там, где есть доп. реквизиты, после наименования в скобках указано их количество (у Вас — Договор контрагента, Номенклатурная группа).

А можно ли изменить ТИП данных для доп.реквизита без изменения конфы — мне нужно «Документы.ПТиУ»?? (Конкретно: мне нужно к документу Реализации прикреплять транспортные расходы (т.е. док ПТиУ) и чтоб была видна связь в РТиУ, и еще много всяких ПТиУ могут быть прикреплены к РТиУ)

Меня очень часто спрашивают, как добавить таблицу к документу или справочнику?
И действительно, как сделать такую задачу не усложняя дальнейшее обновление конфигурации? И вроде есть доп. реквизиты и доп. сведения, но почему же они не могут принимать тип таблицы значений?

В итоге чаще всего используется 2 варианта:

1. Простой способ. Прямо в объекте добавляется таблица, а затем либо программно либо жестко(вручную) выводится на форму.

Минусы. Обновление конфигурации будет требовать соблюдения изменений и повышенной внимательности, чтобы не потерять эти изменения.
Плюсы. Самый простой вариант для разработки, к таблице значений можно обращаться без танцев с бубном, например через запросы.

2. Нормальный вариант, но тоже с доработкой конфигурации.
Добавляется объект с таблицей значений и реквизитом с ссылкой на объект родитель, данная таблица значений выводится, к примеру, через расширение конфигурации на форму основного объекта.

Плюсы. Простое обновление, к таблице значений можно обращаться, например через запросы.
Минусы. Требуется больше предусмотреть различные ограничения на созданный объект а, следовательно, требует определенных знаний. Возможно, потребуется добавление ролией и настройки профилей пользователей.

Есть, конечно, еще другие варианты к примеру с хранилищем, но статья не об этом…

Читайте также:  Cpu soc voltage ryzen

Статья, о том, как все-таки хранить таблицу значений в доп. реквизитах, ну или в доп. сведениях.

Уже более полугода держу в голове этот способ, но ни разу его не применял. Вот, наконец, добрались руки. Я не утверждаю, что никто не придумывал данный способ, но на подобное решение я не натыкался. Заранее скажу, вариант не идеален, и сгодится только под определенные задачи.

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

Пример продемонстрирую на конфигурации Документооборот 2.1.6.8. Буду использовать дополнительный реквизит, но можно использовать дополнительные сведения. Весь код будет написан в Расширении конфигурации.

Задача:
Сразу говорю задачка больше шуточная для демонстрации метода. Например, нам понадобилось добавить табличную часть «Адекватность контактных лиц», она должна присутствовать в справочнике Контрагенты и содержать колонки: Контактное лицо, Совет (некая рекомендация по общению с контактным лицом), Тип контакта.

1 Добавляем доп. реквизит и называем его к примеру «ТЗ_АдекватностьКонтактныхЛиц».
Я этот реквизит делаю общим для всех видов контрагентов. Тип его будет строка неограниченной длины.

2 Создаем Расширение конфигурации и Дорабатываем форму Контрагентов.
Добавляем реквизиты формы:

— «ДопТЗ» тип ПланВидовХарактеристикСсылка.ДополнительныеРеквизитыИСведения
— ТЗ_АдекватностьКонтактныхЛиц тип ТаблицаЗначений:
КонтактноеЛицо тип СправочникСсылка.КонтактныеЛица
ТипКонтакта тип Строка
Совет тип Строка

Добавляем на форму страницу «ГруппаАдекватностьКонтактныхЛиц» и снимаем видимость.
В данную группу выводим «ТЗ_АдекватностьКонтактныхЛиц»

3 Пишем код.
ПриСозданииНаСервере.
Необходимо считать сам доп реквизит напомню мы его обозвали «ТЗ_АдекватностьКонтактныхЛиц», далее прочитать его значение и построить по его значению таблицу значений.

Значение доп реквизита я предлагаю хранить в формате JSON, у кого более старая платформа можно использовать XML.

ПриОткрытии. Программно прячем доп. реквизит. Он хранит JSON, поэтому пользователю особо неинтересен.

ПередЗаписьюНаСервере. Если ТЗ изменилась сохраняем ее в виде строки JSON в доп. реквизит.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *