Получение значения реквизита по ссылке

19.06.25

Разработка - Универсальные функции

Данная функция позволяет получить значение реквизита на любом уровне вложенности. Например: для получения значения реквизита ЗаказПокупателя.ДоговорКонтрагента.ОсновнойМенеджер.Подразделение.

Бесплатные

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Бесплатно
Получение значения реквизита по ссылке
.epf 7,30Kb
3 Скачать бесплатно

Столкнулся с проблемой получения значения вложенных реквизитов при отсутствии прав на промежуточный реквизит.

Например: ЗаказПокупателя.ДоговорКонтрагента.ОсновнойМенеджер.Подразделение выдаст ошибку, если нет права на чтение справочника Пользователи (ОсновнойМенеджер).

При выполнении данной функции из привилегированного общего модуля данная проблема обходится.

Функция ПолучитьЗначениеРеквизитаУниверсальная(ЗначСсылка,ЗначТекстРеквизитов) Экспорт
    //Генерируем строку    для выполнения
    Результат = Неопределено;
    ТекстРезультат = "Результат = ЗначСсылка";
    МассивРеквизитов = СтрРазделить(ЗначТекстРеквизитов,".");
    Для каждого Элемент Из МассивРеквизитов Цикл 
        ТекстРезультат = ТекстРезультат + "[""" + Элемент + """]";
    КонецЦикла; 
    Попытка
        Выполнить(ТекстРезультат); 
    Исключение
    КонецПопытки;
    Возврат Результат;
КонецФункции

 

Пример использования:

Значение = ПолучитьЗначениеРеквизитаУниверсальная(ЗаказПокупателя,"ДоговорКонтрагента.ОсновнойМенеджер.Подразделение")

 

Проверено на следующих конфигурациях и релизах:

  • Управление производственным предприятием, редакция 1.3, релизы 1.3.247.2

Вступайте в нашу телеграмм-группу Инфостарт

Получение значения реквизита

См. также

Универсальные функции Работа с интерфейсом Программист 1С v8.3 Бесплатно (free)

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

14.05.2025    3829    DeerCven    9    

48

Универсальные функции Программист 1С v8.3 1C:Бухгалтерия Бесплатно (free)

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

21.05.2024    42274    dimanich70    83    

158

Универсальные функции Программист 1С v8.3 1C:Бухгалтерия Абонемент ($m)

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

1 стартмани

18.03.2024    6230    6    John_d    11    

58

Универсальные функции Программист Стажер 1С v8.3 1C:Бухгалтерия Бесплатно (free)

Пришлось помучиться с GUID-ами немного, решил поделиться опытом, мало ли кому пригодится.

12.02.2024    51368    atdonya    31    

66

Универсальные функции Программист 1С v8.3 Бесплатно (free)

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

30.11.2023    7990    ke.92@mail.ru    17    

66

WEB-интеграция Универсальные функции Механизмы платформы 1С Программист 1С v8.3 1C:Бухгалтерия Бесплатно (free)

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

28.08.2023    21412    YA_418728146    8    

174
Для отправки сообщения требуется регистрация/авторизация