|   |   | 
| 
 | 1С ERP 2.4 Как найти доп. реквизит контрагента ? | ☑ | ||
|---|---|---|---|---|
| 0
    
        Azgerd 11.08.22✎ 09:31 | 
        Здравствуйте! Конфигурация 1С ERP 2.4 . В настройках CRM и маркетинг снят флаг с пункта "Независимо вести партнёров и контрагентов" . Появилась необходимость добавить дополнительный реквизит к справочнику контрагентов. В подсистеме "НСИ и администрирование" - "Общие настройки" установил флаг "Дополнительные реквизиты и сведения", перешёл по гиперссылке "Дополнительные реквизиты", в дереве нашёл раздел "Контрагенты" и добавил новый реквизит. Захожу в справочник контрагентов, на вкладке "Дополнительно" этого нового реквизита нет. По кнопке "Ещё" перехожу в раздел "Изменить состав дополнительных реквизитов" - перехожу на дерево разделов "Партнеры" - "Общие" (для меня было неожиданно, что по-умолчанию из справочника "Контрагенты" я попал в раздел "Партнеры" - "Общие", а не в раздел "Контрагенты"), нажал "Добавить" выбрал меню "Из другого набора" и скопировал реквизит из набора "Контрагенты" в набор  "Партнеры" - "Общие".
 В справочнике "Контрагенты" на вкладке "Дополнительно" появился этот реквизит. Необходимо через внешнюю обработку читать и изменять этот реквизит. В пользовательском режиме, в консоле запросов пытаюсь найти, где хранятся значения эт ого реквизита. Сделал запрос к табличной части КонтрагентыДополнительныеРеквизиты - пусто! Попробовал сделать запрос на Табличную часть справочника "Партнёры" ПартнерыДополнительныеРеквизиты - тоже пусто... Подскажите в какой таблице искать значения этого доп. реквизита ? | |||
| 1
    
        Timon1405 11.08.22✎ 09:46 | 
        >>Сделал запрос к табличной части КонтрагентыДополнительныеРеквизиты - пусто! 
 и будет пусто пока не заведёте значение реквизита хотя бы в одном контрагенте | |||
| 2
    
        delgadoo 11.08.22✎ 09:49 | 
        (0) вы же не указали значение в добавленном реквизите контрагента, поэтому при чтении табличной части у вас ничего нет. 
 Свойство - это ПВХ "Дополнительные реквизиты и сведения", значение - справочник "Дополнительные значения". Используя эти метаданные добавляйте строки программно. | |||
| 3
    
        Azgerd 11.08.22✎ 09:52 | 
        (1) Значения в доп. реквизите есть, по некоторым контрагентам значения доп.реквизита заполнены.     | |||
| 4
    
        shuhard 11.08.22✎ 10:04 | 
        (3) и в ЖР ни чего нет ?     | |||
| 5
    
        Azgerd 11.08.22✎ 10:05 | 
        (2) Значение доп.реквизитов хранятся в регистре сведений "ДополнительныеСведения" В котором измерение "Объект" - (составной тип) , в кот. в моём случае элемент справочника Контрагент, измерение "Свойство" тип  - ПВХ (сам доп. ревизит) и ресурс "Значение". Например у доп. реквизита значение булево, как в запросе отобрать контрагентов, у которых значение доп. реквизита = Истина ?     | |||
| 6
    
        Azgerd 11.08.22✎ 10:06 | 
        (4) ЖР - журнал регистрации ? А он здесь причем ?     | |||
| 7
    
        delgadoo 11.08.22✎ 10:26 | 
        (5) 
 # ВЫБРАТЬ ДополнительныеСведения.Объект КАК Объект ИЗ РегистрСведений.ДополнительныеСведения КАК ДополнительныеСведения ГДЕ ДополнительныеСведения.Свойство = &ВашеСвойство И ДополнительныеСведения.Значение = ИСТИНА # как вариант у "ВашеСвойство" (свойство ПВХ) есть реквизит "Имя", можно свойство находить исходя из значения данного реквизита. # ГДЕ ДополнительныеСведения.Свойство.Имя = "ИмяСвойства" # | |||
| 8
    
        Azgerd 11.08.22✎ 10:36 | 
        (7) Спасибо !     | |||
| 9
    
        Timon1405 11.08.22✎ 10:41 | 
        (5) значения доп. реквизитов хранятся в ТЧ объекта, а значения доп. свойств в РС
 чтобы получить свойство изучите функцию, там например есть "разрешенные" в запросе, про которое часто забывают УправлениеСвойствами.ЗначениеСвойства(Объект, Свойство, КодЯзыка = "") и подумайте как ее применить к нескольким объектам | |||
| 10
    
        Azgerd 12.08.22✎ 10:13 | 
        Все же не могу добраться к значению доп. реквизита контрагента... Есть подозрение, что это связанно с особенностями 1C ERP. Для проверки создал доп. реквизит для Номенклатуры, с именем ВыгрузкаНоменклатуры - тип булево. На форме справочника этот реквизит появился,
 выполнил код СсылкаНоменклатура = Справочники.Номенклатура.НайтиПоКоду("00-00009665"); ДопРеквизит = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("ВыгрузкаНоменклатуры"); ТаблицаЗначение = СсылкаНоменклатура.ДополнительныеРеквизиты.Найти(ДопРеквизит); Значение = ТаблицаЗначение.Значение; Значение получил, все прекрасно! Делаю тоже самое для справочника Контрагенты СсылкаКонтрагент = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН","XXXXXXXXXX"); ДопРеквизит = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("ВыгрузкаКонтрагентов"); ТаблицаЗначение = СсылкаНоменклатура.ДополнительныеРеквизиты.Найти(ДопРеквизит); Значение = ТаблицаЗначение.Значение; СсылкаКонтрагент - получил нужного контрагента, ДопРеквизит - нашелся, ТаблицаЗначение - НЕОПРЕДЕЛЕНО! Соответственно не получил и Значение. Для интереса делаю запрос к таблице НоменклатураДополнительныеРеквизиты - там есть записи с доп.реквизитом, делаю запрос к таблице КонтрагентыДополнительныеРеквизиты - пусто!!! Хотя на форме элемента справочника Контрагенты этот реквизит есть и заполнен. Получается Доп.реквизиты именно для справочника Контрагенты не хранятся в табличной части Контрагенты.ДополнительныеРеквизиты... Тогда где их искать ? | |||
| 11
    
        rsv 12.08.22✎ 10:35 | 
        (10) в бухии как в (9) . Работает. Реквизиты в табличной части , свойства в регистре.     | |||
| 12
    
        Azgerd 12.08.22✎ 11:36 | 
        Вроде докопался...При снятом флаге в настройке ERP "Независимо вести партнеров и контрагентов" = Ложь, доп.реквизиты, кот. ввели в справочнике контрагентов хранятся в табличной части доп.реквизитов справочника партнеров, а в табличной части доп.реквизитов контрагентов - пусто.     | |||
| 13
    
        AlvlSpb naïve 12.08.22✎ 11:52 | 
        (10)  СсылкаКонтрагент = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН","XXXXXXXXXX"); 
 ДопРеквизит = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("ВыгрузкаКонтрагентов"); ТаблицаЗначение = СсылкаНоменклатура.ДополнительныеРеквизиты.Найти(ДопРеквизит); Значение = ТаблицаЗначение.Значение; ТабюлицаЗначение по контрагенту пытаешься получить из таб ДополнительныеРеквизиты справочника номенклатура (СсылкаНоменклатура.ДополнительныеРеквизиты.Найти(ДопРеквизит)). естественно там нет такого реквизита | |||
| 14
    
        Azgerd 12.08.22✎ 13:29 | 
        (13) Да это была ошибка, но дело не в этом, см (12)     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |