Имя: Пароль:
1C
1С v8
Конвертация 2.1 строкового значения доп. реквизита в ссылочный
0 lirt82
 
23.06.25
09:45
Из базы источника в файл выгрузки записывается доп. реквизит "Завод" с типом строка, нужно в базе приемнике настроить ПСК Производитель https://iimg.su/i/X43kL4
Чтобы из базы источника строковое значение название завода-производителя напрм. "Альфа" в базе приемнике заполнилось реквизитом ссылочного типа Справочники.Производители. Скорее всего использовать метод Справочники.Производители.НайтиПоНаименованию("Альфа") ?
В обработчике перед выгрузкой ПСК Производитель сделал условие на выгрузку заполненного значения доп. реквизита.
1 Ёпрст
 
гуру
23.06.25
09:54
Источник - пусто, приемник, тип справочник.нужный, галка поиск по наименованию, в наименовании перед выгрузкой значение=источник.твойстроковый реквизит.
Усё
2 Ёпрст
 
гуру
23.06.25
09:56
В настройках - галка поиск по полям поиска, если не найден
3 lirt82
 
23.06.25
10:02
(2) да, явно указал
https://iimg.su/i/gBNTpV
4 lirt82
 
23.06.25
14:38
(1) ошибка
Ошибка при отправке данных: Ошибка в обработчике события ПередВыгрузкой (свойства)
    ПКО                    =  Номенклатура  (Справочник: Номенклатура)
    ПКС                    =  26  (--> Производитель)
    Объект                 =  Товары для реализации  (Номенклатура)
    СвойствоПриемника      =  Производитель  (СправочникСсылка.Производители)
    Обработчик             =  ПередВыгрузкойСвойства
    ОписаниеОшибки         =  Поле объекта не обнаружено (Завод)
    ПозицияМодуля          =  {(2)}:Значение = Источник.Завод;
{Обработка.КонвертацияОбъектовИнформационныхБаз.МодульОбъекта(12550)}:Выполнить(ПКС.ПередВыгрузкой);
5 Fedor-1971
 
23.06.25
14:44
(4) так Значение не строка, структура
Значение = новый Структура("Завод", СокрЛП(Источник));
или СписокЗначений для 7.7
как ПКО понять что за строку ты передал? Наименование, полноеНаименование, Адрес?
6 lirt82
 
23.06.25
14:55
(5) не сработало
https://iimg.su/i/c1tjGz
7 lirt82
 
23.06.25
14:59
после обмена в базе приемник, в карточке Номенклатура реквизит Производитель заполняется первым значением из списка справочника
8 Ёпрст
 
гуру
23.06.25
15:00
(6) Значение = Источник.Завод;
9 lirt82
 
23.06.25
15:03
10 lirt82
 
23.06.25
15:04
(8) доп реквизит называется "Номенклатура_Завод"
11 Ёпрст
 
гуру
23.06.25
15:10
(10) да хоть васей.
Можно и вовсе не указывать ничего, а в ПКО Производители в ПКС Наименование в Перед Выгрузкой написать Значение = источник.
В ПКО номенклатура просто твой завод будет источник Завод приемник че те надо по правилу Производители, усё.
12 Fedor-1971
 
23.06.25
15:53
(6) А поиск Производителя как настроен? По наименованию?
тогда Структура("Наименование", СокрЛП(Источник))

(11) Не совсем, в источнике должна быть структура для заполнения объявленных полей. Или в ПКО Производители ловить
код для 7:
ВходящиеДанные = СоздатьОбъект("СписокЗначений");
ВходящиеДанные.Установить("Наименование", Источник);
ну и галочку Получать из входящих данных для Наименования
13 Ёпрст
 
гуру
23.06.25
16:27
(11) для одного наименования структура не нужна, как и входящие данные