Имя: Пароль:
1C
 
хочу вытащить данные о директоре контрагента
,
0 A1nurich
 
05.10.23
15:29
Здравствуйте, столкнулся с такой проблемой, что хочу вытащить данные о директоре контрагента, он находится во вкладке "Дополнительно". В конфигураторе нету этих вкладок. Ищу-ищу, но не могу найти, подскажите пожалуйста, может кто-то уже сталкивался с этим
1 Волшебник
 
05.10.23
15:30
ищите регистр сведений "Ответственные лица"
2 A1nurich
 
05.10.23
15:35
(1) Такого регистра нету, есть справочник, но там только из моей компании лица
3 Волшебник
 
05.10.23
15:37
(2) Как же появилась вкладка "Дополнительно", если в Конфигураторе её нет? Чудеса?
4 A1nurich
 
05.10.23
15:39
(3) Ну реально нету таких регистров, может называется по другому или как, я понимаю, что они созданы в конфигураторе, вот и ищу где именно, но не могу пока найти
5 Волшебник
 
05.10.23
15:41
(4) Посмотрите форму, может закладка добавляется программно
6 Stepashkin
 
05.10.23
15:43
А что за конфигурация?
7 A1nurich
 
05.10.23
15:48
(6) 1С:Предприятие 8.3 (8.3.22.1923)
УТ 11
8 A1nurich
 
05.10.23
15:49
(5) Нашел справочник "Наборы дополнительных реквизитов и сведений" Там как раз таки есть доп сведения к контрагенту. Только сейчас надо разобраться, как от туда достать эти данные :D
9 vicof
 
05.10.23
15:49
Это дополнительные реквизиты из БСП. Добавляется программно.
Скорей всего данные хранятся в табличной части ДополнительныеРеквизиты или в отдельном регистре ДополнительныеСведения.
10 vicof
 
05.10.23
15:50
(8) Или так. Запросом, вестимо.
11 A1nurich
 
05.10.23
15:55
(10) Была одна идея, попытаюсь ее реализовать, если не получится, то да, запрос в помощь :D
12 Donkey_hot
 
05.10.23
16:06
(8) Доставать оттуда эти данные принято методом БСП УправлениеСвойствами.ЗначениеРеквизита()
13 A1nurich
 
05.10.23
16:23
(12) Да, нашел, а вот в ЗначениеРеквизита(...), не совсем понял, какие переменные вставлять, можете подсказать ? Сейчас читаю инфу на сайте про это, пока что не могу догнать
14 Donkey_hot
 
05.10.23
16:28
(13) Объект - это ссылка на вашего контрагента, Свойство - это ссылка на элемент плана видов характеристик ДополнительныеРеквизитыИСведения, можно конечно найти ее по наименованию, но лучше воспользоваться реквизитом Имя, в котором хранится уникальный идентификатор.
15 A1nurich
 
05.10.23
16:35
(14) ВЫБРАТЬ
                   ДополнительныеСведения.Объект КАК Объект,
                   ДополнительныеСведения.Свойство КАК Свойство,
                   ДополнительныеСведения.Значение КАК Значение
               ИЗ
                   Справочник.Контрагенты КАК Контрагенты
                       ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДополнительныеСведения КАК ДополнительныеСведения
                       ПО Контрагенты.Ссылка = ДополнительныеСведения.Свойство


Пытаюсь сделать через запрос что-то такое, но выводятся пустые значения
16 Волшебник
 
05.10.23
16:40
(15) надо так:
ПО Контрагенты.Ссылка = ДополнительныеСведения.Объект
17 A1nurich
 
05.10.23
16:44
(16) Вывелось название нужнего мне контрагента, теперь как можно достать от туда данные ?
18 Волшебник
 
05.10.23
16:47
(17) Заполните регистр наконец
19 A1nurich
 
05.10.23
16:58
(14) А, получается мы получаем Объект и Свойство, а потом используя нужного нам контрагента получаем доп данные так: УправлениеСвойствами.ЗначениеРеквизита(Свойство, Объект), да ?
20 Волшебник
 
05.10.23
17:00
(19) Лишь бы не в цикле
21 Donkey_hot
 
05.10.23
18:39
(19) В целом да, с поправкой на то, что объект это есть контрагент.
22 A1nurich
 
06.10.23
08:12
(21) Да, я пробовал вчера сразу вывести нужного контрагента, но почему-то он не видит его.
ВЫБРАТЬ
                   ДополнительныеСведения.Объект КАК Объект,
                   ДополнительныеСведения.Свойство КАК Свойство,
                   ДополнительныеСведения.Значение КАК Значение
               ИЗ
                   Справочник.Контрагенты КАК Контрагенты
                       ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДополнительныеСведения КАК ДополнительныеСведения
                       ПО Контрагенты.Ссылка = ДополнительныеСведения.Объект
                       ГДЕ ДополнительныеСведения.Объект = "Контрагент"

Вот, вместо "Контрагента" ставлю мне нужного, который без Где выводиться нормально
23 A1nurich
 
06.10.23
08:21
Я пробывал и так ссылаться "ДополнительныеСведения.Объект.Контрагенты.Ссылка"
Так также он его не видит, а если вместо "Ссылка" попробовать "Наименование", то вообще говорит, что не видит поле
24 Волшебник
 
06.10.23
08:23
Вам надо понять понятие "тип". В поле "Объект" содержится ссылка на контрагента

Для отбора по контрагенту здесь нужно написать:
ГДЕ ДополнительныеСведения.Объект = &Контрагент

или
ГДЕ Контрагенты.Ссылка = &Контрагент
25 A1nurich
 
06.10.23
08:26
(24) Да, это я понял
Спасибо за подсказку, попробовал ГДЕ Контрагенты.Наименование= &Контрагент и получилось. Кстати, подскажите пожалуйста, как вы код так выделяете, не смог найти инфу в справочниках сайта....
26 Волшебник
 
06.10.23
08:28
(25) Я выделяю код, как хочу, а вот Вам надо начать понимать разницу между строкой и ссылкой. Когда наберётесь опыта, получите новые кнопочки на сайте.
27 A1nurich
 
06.10.23
08:57
(21) Выдает ошибку :( Не могу понять в чем проблема



Значение не является значением объектного типа (Метаданные)
{ОбщийМодуль.УправлениеСвойствами.Модуль(1088)}:ПолучатьРеквизиты = УправлениеСвойствамиСлужебный.ЭтоОбъектМетаданныхСДополнительнымиРеквизитами(Объект.Метаданные());
{ВнешняяОбработка.ДоговорПоставкоДем.МодульОбъекта(71)}:ДопДанныеКонтрагента = УправлениеСвойствами.ЗначениеСвойства(Выборка.Объект, Выборка.Свойство);
{ВнешняяОбработка.ДоговорПоставкоДем.МодульОбъекта(38)}:УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(
{ВнешняяОбработка.ДоговорПоставкоДем.Форма.ФормаНастроек.Форма(61)}:ОбработкаОбъект.Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода, ПараметрыПечати);
{ВнешняяОбработка.ДоговорПоставкоДем.Форма.ФормаНастроек.Форма(42)}:МассивПечатныхФорм = ПечатьНаСервере(ОбъектыПечати, СтркутураДанных);
28 Волшебник
 
06.10.23
08:58
(27) Проверьте ТИП
29 A1nurich
 
06.10.23
09:01
(28) тип переменной, к которой я присваиваю данные ?
30 Волшебник
 
06.10.23
09:03
(29) Вот это как раз не важно. Проверьте тип переменной, от которой Вы берёте Метаданные()
31 A1nurich
 
06.10.23
09:09
(30) ну тип Объект - ЗадачаСсылка, а тип Свойства - ПланВидовХарактеристикСсылка. То есть они ссылаются туда. Но не могу понять, что это мне может дать
32 Волшебник
 
06.10.23
09:10
(31) Это Вы так думаете, а на самом деле там что-то другое, потому что выдалась ошибка.
Скорее всего там значение NULL (тип тоже NULL)
33 A1nurich
 
06.10.23
09:10
(32) Ну я проверял в консоле запросов, там всё нормально было, всё выводилось
34 Волшебник
 
06.10.23
09:11
(33) Программа не ошибается. Если нет Метаданные(), значит нет. Примите это как факт
35 A1nurich
 
06.10.23
09:12
(34) :(
36 A1nurich
 
06.10.23
09:15
(34) Всё, я понял, что вы имели ввиду, спасибо
37 Волшебник
 
06.10.23
09:18
(36) пишется "иметь в виду"
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший