Как добавить реквизит в форму списка справочника

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

Добавление колонки с дополнительным реквизитом в форму списка справочника в 1С 8.3

Рассмотрим механизм добавления колонки с дополнительным реквизитом на примере конфигурации УТ 11 (подойдет также и для Бухгалтерия 3.0,  Розница 2.2, 2.3 и др. конфигураций на управляемых формах).

У нас есть дополнительный реквизит под названием «Категория цветов».

Дополнительный реквизит

Дополнительный реквизит номенклатуры

Нам требуется вывести его в список номенклатуры следующим образом:

Колонка

Колонка с дополнительным реквизитом

Для этого в форме списка номенклатуры нажимаем кнопку «Еще»/ «Изменить форму».

изменить форму

Кнопка изменить форму

Попадаем в настройки формы, тут нам нужно найти таблицу и в ней поле «Ссылка», выделяем его и нажимаем кнопку «Добавить поля». Обратите внимание, что кнопка «Добавить поля» будет неактивна, пока выделены поля не ссылочного типа.

добавить поля

Кнопка добавить поля

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

Выбор

Выбор реквизита

Выбранный реквизит появится в настройках формы. Отмечаем его галочкой и нажимаем «Применить».

Колонка

Новая колонка

Вот мы и добавили новую колонку с нашим дополнительным реквизитом в форму списка номенклатуры.

Колонка

Колонка с дополнительным реквизитом

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

Что ни день вижу обсуждения, где предлагают нещадно ломать типовую конфигурацию для решения задач, того вовсе не требующих. Если есть необходимость сохранения каких либо дополнительных данных, сохранение которых не предусмотрено не стоит сразу создавать свои справочники или регистры сведений, и уж тем более не нужно добавлять свои реквизиты в справочники и документы. Дополнительные реквизиты в типовых конфигурациях существуют давно, так что ничего нового я тут не открыл, просто увидел, что в БП 3.0 механизм несколько изменился, решил поделиться с сообществом. (Файл с текстом в word во вложении:-)
28.06.2014 — Для работы с ДРС предлагаю использовать инструмент, описанный http://infostart.ru/public/288722/

Использование дополнительных реквизитов и сведений в БП 3.0

Дополнительные реквизиты и сведения (далее ДРС) — механизм, позволяющий не изменяя конфигурацию расширить её функционал. Написать эту заметку сподвиг заказ на печать ТТН и Справки А и Б с сохранением реквизитов, с целью их дальнейшего использования в декларациях по алкогольной продукции, да и просто для того, что бы повторно посмотреть дополнительную информацию по реализации. Используют базовую БП 3.0 — менять конфигурацию соответственно нельзя, да для этой задачи вполне достаточно ДРС.

Для БП 2.0 в принципе решение у меня давно есть — так же использую дополнительные реквизиты, где сохраняются данные по автомобилю, водителю, перевозчику и т.д. Схема отработана — при печати записываются (при первой печати создаются не созданные) дополнительные реквизиты, при последующем выводе на печать реквизиты формы заполняются сохраненными значениями. Эти же данные использую при заполнении деклараций по алкоголю. Стал делать на УФ в БП 3.0 (3.0.20.18) и увидел, что механизм использования ДРС существенно изменился, причем ИМХО в лучшую сторону:

  1. Изменились объекты, «обслуживающие» ДРС:

БП 2.0

БП 3.0

Справочник ЗначенияСвойствОбъектов

Удален

План видов характеристик НазначенияСвойствКатегорийОбъектов

Удален

План видов характеристик

СвойстваОбъектов

Удален

Регистр сведений ЗначенияСвойствОбъектов

Удален

Нет

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

Нет

План видов характеристик ДополнительныеРеквизитыИСведения

Нет

Регистр сведений ДополнительныеСведения

  1. В 2.0 название «Дополнительны реквизиты» не совсем точно отражает суть назначение эти данных — это всё-таки именно «дополнительные сведения», и хранятся они в объектах конфигурации, отличных от самого объекта этих сведений. В 3.0 можно задавать как сведения, сохраняемые регистре «Дополнительные сведения», так и именно реквизиты, сохраняемые в табличной части справочников «ДополнительныеРеквизиты» (в УТ 11 сейчас аналогичная табличная часть есть и у документов), причем эти реквизиты стали доступны в форме элемента справочника, а не вызываются по кнопке отдельным окном.

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

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

Для документов сейчас доступен только выбор дополнительных сведений:

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

Причем редактируются дополнительные реквизиты справочника в форме элемента:

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

Изменился и состав объектов, имеющих ДРС:

  • — БП 2.0 это 15 справочников и список всех документов конфигурации в одной характеристике,
  • — БП 3.0 справочников стало 18, и 110 документов (не проверял все это документы или нет), на каждый из которых дополнительные сведения задаются в отдельном предопределенном элементе справочника «НаборыДополнительныхРеквизитовИСведений».

Для дополнительных реквизитов с типом «Значение свойства объекта» можно задавать произвольный список для выбора — фактически аналог справочника (с 2.0 это был справочник «ЗначенияСвойствОбъектов»):

Список может редактироваться.

Ещё один момент, из справки к ПВХ «ДополнительныеРеквизитыИСведения» — «Все дополнительные реквизиты и сведения объектов можно вывести в отчетах и списках.». Действительно, теперь зарегистрированные ДРС можно использовать не только для целей сохранения данных, но и, например, для отбора в списке документа и т.п.

Список РТиУ без отбора:

Записанные дополнительные сведения для документа:

Настройка отбора списка РТиУ по доп.сведениям:

Список РТиУ с установленным отбором по незаполненному водителю:

Вроде бы пустячки, а приятно……….

Вывести доп реквизит на форму списка

Я
   Nzzzz

14.09.20 — 10:31

Всем привет!

Добавляю доп реквизит «Код производителя» в справочник номенклатура. Тип строка. Далее мне нужно добавить этот реквизит на форму списка. Но не получается этого сделать. Захожу в «Изменить форму» — там нет ссылки, чтобы к ней добавить поле «Код производителя». Как его вывести на форму? подскажите пожалуйста.

Конфигурация Бухгалтерия предприятия, редакция 3.0 (3.0.77.106)

  

Партнерская программа EFSOL Oblako

   ДенисЧ

1 — 14.09.20 — 10:36

ЗАпрос динсписка менять надо

   Nzzzz

2 — 14.09.20 — 10:39

(1) а если конфа типовая?

   Timon1405

3 — 14.09.20 — 10:41

(2) расширением. добавить ссылку, а через неё и допреквизит через точку

   Вафель

4 — 14.09.20 — 10:43

допреквизит только в пользовательском режиме можно

   Nzzzz

5 — 14.09.20 — 10:45

(4) в пользовательском режиме можно добавить на форму?

Или что можно?

   РБ

6 — 14.09.20 — 10:46

(5) так через ссылка.допреквизит ж?

   Nzzzz

7 — 14.09.20 — 10:51

(6) Ссылки нет.

   РБ

8 — 14.09.20 — 10:53

(7) не верю))) Изменить форму-и нет доступного поля Ссылка???

   Nzzzz

9 — 14.09.20 — 10:57

(8) Нет, зайдите в БП 3.0 в форму списка справочника номенклатуры

   hhhh

10 — 14.09.20 — 11:07

(9) тогда точно (1)

   Nzzzz

11 — 14.09.20 — 11:08

капец

   РБ

12 — 14.09.20 — 11:09

(9) зашла. все есть.

image

   РБ

13 — 14.09.20 — 11:12

+(12) и вывела доп.реквизит

https://ibb.co/zR2GMtb

   Nzzzz

14 — 14.09.20 — 11:13

(12) https://ibb.co/z7X3smT

   Nzzzz

15 — 14.09.20 — 11:14

Почему у меня нет?!?!

   oslokot

16 — 14.09.20 — 11:16

Попробуйте Еще — установить стандартные настройки и скрин в студию

   Nzzzz

17 — 14.09.20 — 11:21

(16) Ничего не поменялось

https://ibb.co/HrN9nNd

   oslokot

18 — 14.09.20 — 11:24

Список какой-то не стандартный. Или дин.список правили или расширение наложено

  

oslokot

19 — 14.09.20 — 11:25

У всех бунхня вот так выглядит — (12)

TurboConf — расширение возможностей Конфигуратора 1С

Показывать по
10
20
40
сообщений

Новая тема

Ответить

Miyamoto

Дата регистрации: 04.04.2011
Сообщений: 49

Добрый день коллеги !<br>Ситуация следующая — конфигурация БП 2.0, в справочник договоров добавили несколько доп. реквизитов (план видов характеристик «Дополнительные реквизиты»). Вопрос теперь в следующем — как добавить значения доп. реквизитов в форму списка справочника договоров. Вообще, можно ли это сделать ?

Prikum

активный пользователь

офлайн

Дата регистрации: 18.02.2002
Сообщений: 20842

> Вообще, можно ли это сделать ?<br>Можно.

Денис (САМАРА)

Дата регистрации: 09.04.2008
Сообщений: 8351

Miyamoto

Дата регистрации: 04.04.2011
Сообщений: 49

В идеале конфигурацию менять не хотелось бы. Но, чувствую, без этого не обойтись ?

Тэра

Дата регистрации: 25.12.2008
Сообщений: 22390

ну вы же её уже изменили!

ZhAmAn

Дата регистрации: 23.12.2010
Сообщений: 1333

Miyamoto

Дата регистрации: 04.04.2011
Сообщений: 49

Пока еще не изменил — доп. реквизиты я добавил не в сам справочник, а в план видов характеристик (см. выше)

Miyamoto

Дата регистрации: 04.04.2011
Сообщений: 49

Так как быть с данной задачей ? Никто не сталкивался с подобными задачами ? Или действительно проще не задействовать доп. реквизиты в плане видом характеристик, а изменить конфигурацию и добавить реквизиты в сам справочник ? Просто изначально я хотел уйти от необходимости внесения изменений в типовую конфигурацию — для этого и решил задействовать план видов характеристик.

ZhAmAn

Дата регистрации: 23.12.2010
Сообщений: 1333

Без изменения формы списка никак не обойтись!Реквизиты можно не добавлять,можно просто скопировать типовую форму,поставить её как основную форму списка,добавить туда колонку,написать процедуру заполнения колонки.

Miyamoto

Дата регистрации: 04.04.2011
Сообщений: 49

Я тоже к этому склоняюсь уже — проще добавить новые реквизиты в сам справочник чем вычисляемую колонку в форму списка, значение в которую будет подтягиваться из плана видов характеристик<br>Спасибо

Показывать по
10
20
40
сообщений

На чтение 5 мин Просмотров 2.8к. Опубликовано 02.11.2021

Содержание

  1. Остатки в списке документов
  2. Неверный путь
  3. Оптимальное решение
  4. Обращайте внимание

Рассмотрим задачу, когда нужно вывести дополнительные реквизиты и сведения в общем списке элементов. Рассмотрим на примере конфигурации УТ 11, в справочник Номенклатура добавлен дополнительный реквизит Артикул клиента.

Открываем список элементов справочника Номенклатура, выбираем меню Все действия – Изменить форму… (рис. 1):

Рис. 1. Все действия – Изменить форму…

В открывшемся окне Настройка формы у Списка номенклатуры находим поле Ссылка, выделяем его и нажимаем Добавить поля (рис. 2):

Рис. 2. Добавление полей

Далее в открывшемся окне Выберите поля для размещения в форме выбираем нужный дополнительный реквизит Артикул клиента и нажимаем ОК (рис. 3):

Рис. 3. Выбор дополнительного реквизита

Поле Артикул клиента появляется на форме Настройка формы, можно переместить его, нажимая на стрелочки Вверх, Вниз. После выбора позиции нажимаем ОК (рис. 4):

Рис. 4. Дополнительный реквизит в списке полей

В списке Номенклатуры появилась колонка с дополнительным реквизитом Артикул клиента (рис. 5):

Рис. 5. Новая колонка в списке

Можно выгрузить в файл получившийся список, меню Все действия – Вывести список… (рис. 6):

Остатки в списке документов

Решим следующую задачу: в списке документов «Заказы поставщику» нам необходимо добавить новую колонку «Остаток по заказу», которая будет отображать остаток для документа в регистре накопления «Заказы поставщику» на текущую дату.

Реализовать это нужно в конфигурации «Управление производственным предприятием» версии 1.3.

Неверный путь

Рассмотрим самый «очевидный» путь, он же самый простой. Большинство начинающих программистов делают именно так. У табличного поля формы, которое привязано к реквизиту формы с типом «ДокументСписок» есть событие «ПриВыводеСтроки». В нем напишем Запрос к остаткам по заказу для выводимой строки и полученный результат присвоим ячейке текущей строки в колонке «Остаток». Вот так будет выглядеть код обработчика события «ПриВыводеСтроки»:

Дело сделано! Задача решена! Но! Событие «ПриВыводеСтроки» вызывается для каждой строки отдельно. То есть, если в список выводится 30 строк, то запрос будет формироваться столько же раз! Может есть другой путь?

Оптимальное решение

Другой путь есть. Оптимальное решение кроется в использовании события «ПриПолученииДанных». Это событие вызывается один раз, когда происходит получение порции данных списком документов. В контексте этого события нам доступны данные, которые получила платформа. Поэтому мы можем их обработать одним запросом. Вот программный код обработчика «ПриПолученииДанных» для решения этой задачи:

Результат работы такой же, как и для варианта с использованием события «ПриВыводеСтроки», но есть одно НО.

Обращайте внимание

Самое главное отличие заключается в скорости работы. Вот сравнение времени выполнения для обоих вариантов решения задачи:

При использовании «ПриВыводеСтроки» время формирования списка выполняется дольше практически в четыре раза! Не смотря на это, не рекомендую добавлять подобные поля в список документов, поскольку, в любом случае, это потребует дополнительных ресурсов серверной машины. Лучше используйте отчеты.

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

Задача:
Производство. Вахтовый метод работы, сменные графики, когда вахтовый цикл составляет 1 месяц, 2 месяца и 3 месяца. Территория — местность приравненная к районам крайнего севера (МСК), со всеми вытекающими последствиями для учета. По спец. оценке условий труда (СОУТ) количество дней отпуска будет изменяться в зависимости от класса «вредности». Этот факт мы также обязаны предусмотреть при составлении графика. А именно будет изменяться количество дней оплачиваемого отдыха за работу сверх нормы. Итак, условий много. Было решено создавать графики с учетом всех условий, максимально приближено к реальным. Ежемесячные особенности, к примеру изменения дат и количества дней в пути, корректировать индивидуальными.
На выходе получили более 50 графиков работ. Встал вопрос как их идентифицировать при приеме и переводе сотрудников. Заказчик поставил задачу разработать внутренние нормативные документы для упрощения работы кадровой службы. Начали описывать. Договорились что для информативности унифицируем названия графиков. Но по факту этого оказалось недостаточно. Очень хотелось иметь ещё и номер. Структура элемента справочника Графики работы сотрудников к нашему разочарованию не имеет нумерации.

Я пошла искать подобные темы. Форумчане в голос твердили что без снятия конфигурации с поддержки не обойтись. Вот пример такой темы: https://buh.ru/forum/forum18375/topic80453/

Но на моем проекте жёсткое условие, конфигурацию с поддержки не снимать. Подумав пару часов, нашла решение. Применила дополнительные реквизиты и настройки списка.

Решение:

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

Как видно на рисунке выше, дополнительный реквизит самый простой, тип строка.

2. Для удобства переместила доп. реквизит на форме элемента справочника вверх

3. В форме списка справочника — Все действия (или «Ещё», если работаете в режиме Такси) — Изменить форму. Добавим на форму поле «Ссылка»

4. Теперь идем в Настроить список (там же, во «Все действия») Условное оформление — Добавим текст, но выберем не Строка, а Поле компоновки данных — ДополнительныеРеквизиты.Значение

5. В качестве оформляемого поля выбираем Ссылка

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

Буду рада если кому-нибудь пригодится такое решение.

  • Распечатать

Оцените статью:

  1. 5
  2. 4
  3. 3
  4. 2
  5. 1

(0 голосов, среднее: 0 из 5)

Поделитесь с друзьями!


Добавление доп. реквизита в динамический список программно

Добавление доп. реквизита в динамический список программно

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

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

Как добавить дополнительный реквизит в динамический список:

Получившейся код модуля:

&НаКлиенте
Процедура dev_ПриОткрытииПосле(Отказ)
	
	ОтображениеДополнительныхРеквизитов();
	
КонецПроцедуры

&НаСервере
Процедура ОтображениеДополнительныхРеквизитов()
		
	// Получаем набор свойств объекта по пустой ссылке объекта метаданных.
	НаборСвойств = УправлениеСвойствамиСлужебный.ПолучитьНаборыСвойствОбъекта(Справочники.Номенклатура.ПустаяСсылка());
		
	// Инициализируем имя набора свойств. 
	ИмяНабора = НаборСвойств[0].Набор.Наименование;     
	Свойства  = НаборСвойств[0].Набор.ДополнительныеРеквизиты.Выгрузить().ВыгрузитьКолонку("Свойство");
	
	// Наполняем массив именами доп.реквизитов, которые мы хотим отобразить в списке формы. 
	// Можно создать отдельную настроку, например регистр где будем хранить выводимые поля,
	// для конкретных объектов метаданных или даже в зависимости от роли.
	МассивОтображаемыхСвойств = Новый Массив;
	МассивОтображаемыхСвойств.Добавить("Краткое описание");
	// и т.д.
	
	// Если например у нас полные права то выведем все доп.реквизиты.
	Если РольДоступна("ПолныеПрава") Тогда   
		МассивОтображаемыхСвойств = ПолучитьМассивНаименованийСвойств(Свойства);
	КонецЕсли;
	
	// Квадратные скобки обязательны.
	// Именно так платформа понимает что мы обращаемся к реквизиту ТЧ "ДополнительныеРеквизиты" 
	ШаблонПутьКДанным = "Список.Ссылка.[%1 (%2)]";	 
	
	// Обход циклом свойств для вывода в список.
	Для каждого ТекущееСвойство Из Свойства Цикл
		
		НаименованиеСвойства = ТекущееСвойство.Наименование; 
		ИмяЭлемента = ТекущееСвойство.ИдентификаторДляФормул; 
		
		Если  МассивОтображаемыхСвойств.Найти(НаименованиеСвойства) <> Неопределено Тогда
			СтрокаДанные = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонПутьКДанным, НаименованиеСвойства, ИмяНабора); 					
			НовыйЭлемент = Элементы.Добавить(ИмяЭлемента, Тип("ПолеФормы"), Элементы.Список);
			НовыйЭлемент.Вид 			= ВидПоляФормы.ПолеВвода;
			НовыйЭлемент.ПутьКДанным 	= СтрокаДанные;
			НовыйЭлемент.Заголовок 		= НаименованиеСвойства;	  
		КонецЕсли;  
		
	КонецЦикла; 
	
КонецПроцедуры

&НаСервереБезКонтекста
Функция ПолучитьМассивНаименованийСвойств(МассивСвойств) 

	МассивНаименований = Новый Массив;
	Для каждого Свойство Из МассивСвойств Цикл	
		МассивНаименований.Добавить(Свойство.Наименование);
	КонецЦикла;
	
	Возврат МассивНаименований;
	
КонецФункции;

Данный код проверялся на конфигурации «Бухгалтерия предприятия 3.0», но он подойдет для любой конфигурации.

Как результат работы нашего кода прикладываем скриншот и тестовое расширение конфигурации:

6.png - ITsale

Как видим все доп. реквизиты появились в нашем списке.

Для подключения расширения использовались такие надстройки:

7.png - ITsale

Скачать расширение

Оставить заявку на бесплатную консультацию прямо сейчас!


Рассмотрим задачу, когда нужно вывести дополнительные реквизиты и сведения в общем списке элементов. Рассмотрим на примере конфигурации УТ 11, в справочник Номенклатура добавлен дополнительный реквизит Артикул клиента.

Открываем список элементов справочника Номенклатура, выбираем меню Все действия – Изменить форму… (рис. 1):

Рис. 1. Все действия – Изменить форму…

В открывшемся окне Настройка формы у Списка номенклатуры находим поле Ссылка, выделяем его и нажимаем Добавить поля (рис. 2):

Рис. 2. Добавление полей

Далее в открывшемся окне Выберите поля для размещения в форме выбираем нужный дополнительный реквизит Артикул клиента и нажимаем ОК (рис. 3):

Рис. 3. Выбор дополнительного реквизита

Поле Артикул клиента появляется на форме Настройка формы, можно переместить его, нажимая на стрелочки Вверх, Вниз. После выбора позиции нажимаем ОК (рис. 4):

Рис. 4. Дополнительный реквизит в списке полей

В списке Номенклатуры появилась колонка с дополнительным реквизитом Артикул клиента (рис. 5):

Рис. 5. Новая колонка в списке

Можно выгрузить в файл получившийся список, меню Все действия – Вывести список… (рис. 6):

Рис. 6. Вывод списка в файл

Автор: Дина Королева

Подписывайтесь на канал
«Полезный 1С»

В телеграм канале — наш практический опыт, бизнес-кейсы и способы повышения эффективности компании, которые мы опробовали внутри группы Neti.

.

Возврат к списку

Понравилась статья? Поделить с друзьями:
  • Как добавить сотрудника в тинькофф бизнес онлайн
  • Как добиться успеха в бизнесе 9 простых секретов
  • Как долго вы хотели бы работать в нашей компании
  • Как долго идут банковские переводы по реквизитам
  • Как должен выглядеть титульный лист бизнес плана