Skip to content
лого - блог 1с программиста

Блог 1С программиста

Наработки, заметки и другая информация по 1С

  • Главная
  • Типовые конфигурации
    • ЗУП 3.1
      • Разработка
        • Обработки
        • Отчеты
        • Печатные формы
        • Расширения
      • Инструкции
      • Ответы техподдержки 1С
      • Общие вопросы
    • ДО 2.1
    • УХ 3.2
    • УПП 1.3
  • Интеграции и обмены
  • Шаблоны и заготовки
    • Типовые приемы
    • Отчеты
    • Обработки
    • Печатные формы
    • Расширения
  • Платформа 1С
  • Разработки
    • Контакты
  • Toggle search form

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

Posted on 14 марта 25 г.9 октября 25 г. By Алексей 2 комментария к записи Работа с дополнительными реквизитами и сведениями

Содержание:

  • Получение данных в запросе
  • Запись и чтение через методы БСП
    • Запись значений в дополнительные реквизиты и сведения
    • Получение значений дополнительных реквизитов и сведений
  • Проверка свойства на тип: ссылочный или строковый

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

Включается подсистема в пользовательском режиме обычно в разделе Администрирование -> Общие настройки.

Включение дополнительных реквизитов и сведений в конфигурации

В эту статью вынес некоторые возможности по работе с доп. реквизитами и сведениями, которые периодически используются на практике.

Получение данных в запросе
1С (Код)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// 1. Дополнительные сведения
ВЫБРАТЬ
ЕСТЬNULL(ВедомостьДополнительныеСведения.Значение, "") КАК ДопСогласовант
ИЗ
ВТИтоговыеДанные КАК ВТИтоговыеДанные
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДополнительныеСведения КАК ВедомостьДополнительныеСведения
ПО ВТИтоговыеДанные.Ссылка = ВедомостьДополнительныеСведения.Объект
И (ВедомостьДополнительныеСведения.Свойство.Имя = "Ведомость_ДопСогласовант")
//И (ВедомостьДополнительныеСведения.Свойство = &СвойствоДопСогласовант)
 
//СвойствоДопСогласовант = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоРеквизиту("Имя","Ведомость_ДопСогласовант");
//Запрос.УстановитьПараметр("СвойствоДопСогласовант", СвойствоДопСогласовант);
 
// 2. Дополнительные реквизиты
ВЫБРАТЬ
ЕСТЬNULL(ПодразделенияДополнительныеРеквизиты.Значение, "") КАК ПромышленныйПризнак
ИЗ
ВТИтоговыеДанные КАК ИтоговыеДанные
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПодразделенияОрганизаций.ДополнительныеРеквизиты КАК ПодразделенияДополнительныеРеквизиты
ПО ИтоговыеДанные.Подразделение = ПодразделенияДополнительныеРеквизиты.Ссылка
И (ПодразделенияДополнительныеРеквизиты.Свойство.Имя = "Подразделения_ПромышленныйПризнак")
//И (ПодразделенияДополнительныеРеквизиты.Свойство = &СвойствоПромышленныйПризнак)
 
//СвойствоПромышленныйПризнак = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоРеквизиту("Имя","Подразделения_ПромышленныйПризнак");
//Запрос.УстановитьПараметр("СвойствоПромышленныйПризнак", СвойствоПромышленныйПризнак);
Запись и чтение через методы БСП

Большинство методов программного интерфейса можно найти в общем модуле «УправлениеСвойствами».

Запись значений в дополнительные реквизиты и сведения
1С (Код)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// исходные данные
СсылкаСотрудник = Справочники.Сотрудники.НайтиПоНаименованию("Капица Пётр Леонидович", Истина);
СвойствоПенсионер = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоРеквизиту("Имя","Сотрудники_Пенсионер");
 
// инициализация таблицы свойств
ТаблицаСвойств = Новый ТаблицаЗначений;
ТаблицаСвойств.Колонки.Добавить("Свойство");
ТаблицаСвойств.Колонки.Добавить("Значение");
 
// заполнение таблицы данными
СтрокаСвойств = ТаблицаСвойств.Добавить();
СтрокаСвойств.Свойство = СвойствоПенсионер;
СтрокаСвойств.Значение = Истина;
 
// запись
Если ТаблицаСвойств.Количество() > 0 Тогда
УправлениеСвойствами.ЗаписатьСвойстваУОбъекта(СсылкаСотрудник, ТаблицаСвойств);
КонецЕсли;
Получение значений дополнительных реквизитов и сведений
1С (Код)
1
2
3
4
5
6
7
// 1. По одному объекту, одно свойство
// ЗначениеСвойства(Объект, Свойство, КодЯзыка = "")
ЗначениеСвойства = УправлениеСвойствами.ЗначениеСвойства(СсылкаСотрудник, СвойствоПенсионер);
 
// 2. По массиву или одиному объекту, несколько или все свойства
// ЗначенияСвойств(ОбъектыСоСвойствами, ПолучатьДопРеквизиты = Истина, ПолучатьДопСведения = Истина, Свойства = Неопределено, КодЯзыка = "")
ТаблицаЗначенийСвойствОбъектов = УправлениеСвойствами.ЗначенияСвойств(МассивСсылок);
Проверка свойства на тип: ссылочный или строковый
1С (Код)
1
2
3
4
5
6
СвойствоДопРеквизита = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоРеквизиту("Имя", ИмяРеквизита);
Если СвойствоДопРеквизита.ТипЗначения.СодержитТип(Тип("Строка")) Тогда
...
ИначеЕсли СвойствоДопРеквизита.ТипЗначения.СодержитТип(Тип("СправочникСсылка.ЗначенияСвойствОбъектов")) Тогда
...
КонецЕсли;

Рекомендации

  • Шпаргалка по запросам 1С
  • Отбор по дополнительному реквизиту в отчете на СКД
  • Описание структуры файла обмена формата КД 2.0
Типовые приемы, Шаблоны и заготовки Tags:БСП, дополнительные реквизиты, дополнительные сведения

Навигация по записям

Previous Post: Обзор новых возможностей ЗУП 3.1.31 и 3.1.32
Next Post: Программное заполнение документа «Перенос данных»

Комментарии (2) on “Работа с дополнительными реквизитами и сведениями”

  1. Илья:
    18 сентября 25 г. в 11:17

    Здравствуйте.

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

    ПС Хороший сайт. Оформление статей тоже.
    А почему нет по НДФЛ статей? Не актуально?

    Ответить
    1. Алексей:
      19 сентября 25 г. в 16:45

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

      Ответить

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

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

ДзенTelegram

Разработки

  • Печатная форма "Расходный кассовый ордер" для ЗУП 3.1 Печатная форма "Расходный кассовый ордер" ЗУП 3.1 650,00 ₽
  • Отчет "План-факт отпусков сотрудников в виде диаграммы Ганта Отчет "План-факт по отпускам сотрудников" ЗУП 3.1 650,00 ₽
  • Приказ об отмене трудового договора (рис 1) Печатная форма "Отмена приема на работу" ЗУП 3.1 650,00 ₽
  • Обработка “Выплата сотруднику через банк” ЗУП 3.1 Обработка “Выплата сотруднику через банк” ЗУП 3.1 0,00 ₽
  • Тестирование API Яндекс GPT Обработка "Работа с API YandexGPT" 650,00 ₽

MDM web-сервис XML БСП ЕФС-1 ИИ КД 2.0 НДФЛ СЗВ-СТАЖ СЗВ-ТД СКД СТД-Р СФР СЭДО ФСС ФСС НС больничные листы взносы вычеты длительная операция запрос интерфейс кадровая история кадровые данные кадровые переводы легкий труд мастер-данных обмен данными общий модуль отбор отпуска печать без проверки печать с диалогом пользователи представление прием на работу резервы отпусков сверхурочные синхронизация ЗУП и БП средний заработок табель таблица периодов табличный документ фотография штатное расписание

Яндекс.Метрика

© 2022-2026 myblog-1c.ru

Пользовательское соглашение

Контакты