КД, правила обмена #359228


#0 by Abdul
Подскажите как в правилах обмена реквизит документа таблицы товара Наименование был равен в приемнике определенноой строке справочника номенклатура.... Например сейчас так. СправочникСсылка.Номенклатура = СправоникСсылка.Номенклатура, а надо примерно так  СправочникСсылка.Номенклатура = Справочники.Номенклатура.НайтиПоКоду("000025"), но так не работает.... или надо прописывать перед загрузкой? или передВыгрузке.... Если да, то как....
#1 by ТелепатБот
#2 by MaxiM072
после загрузки ПКО своего дока пишешь Объект.Наименование=ТвоеЗначение
#3 by Abdul
А если это свойство?
#4 by lxndr
в обработчике ПКС "ПередВыгрузкой" пишешь чтонить вроде Значение = "000025"; // "000025" - код нужного элемента справочника приемника Далее создаешь новое правило конвертации объекта и указываешь его в предыдущем ПКС. Новое ПКО будет с пустым источником, приемник "СправочникСсылка.Номенклатура". В его составе одно ПКС где истончик - пусто, приемник - код справочника + поиск по этому свойству. В обработчике "Перед выгрузкой" этого ПКС пиши Если правильно понял задачу - должно работать.
#5 by Abdul
Не совсем понял.... В составе новых ПКО, ПКС что ли? Или в старых ПКС правим что новое ПКО и в старом ПКС пишем перед выгрузкой....
#6 by lxndr
1. В старом ПКО (номенклатура табличной части) в обработчике "Перед выгрузкой" писать: 2. В старом ПКО (номенклатура таб. части) указать новое ПКО. 3. Новое ПКО заполнить следующим образом:   источник = пусто   приемник = "СправочникСсылка.Номенклатура" 4. Для нового ПКО (из п. 3) создать ПКС  и заполнить его:   Установить птицу "Поиск объекта при загрузке по свойству"   В тело обработчика ПКС "Перед выгрузкой" написать:              Значение = Источник;
#7 by Abdul
нет, так дает ошибку при загрузке правил... мне кажется Вы не совсем поняли что я хочу, или я не понимаю вас, я думаю что в старых ПКС нужно "Перед выгрузкой" прописать что то типа, Значение = Наименование = Справочник.Номенклатура.НайтиПоКоду("000025") Тогда он весь товар источника в табтоваров  будет присваивать товару с кодом 000025 в приемнике, но так не получается, может как то по другому прописать....
#8 by Abdul
или меня зациклило....
#9 by lxndr
то что я описал как раз и превращает номенклатуру источника в одну и ту же позицию приемника с кодом 000025. Какая ошибка при загрузке правил? Возможно гдето синаксическая ошибка в обрабтчиках?
#10 by Рэйв
Ты чтоли хочешь чтобы у тебя только один товар с кодом 000025 за все выгрузился?
#11 by Рэйв
+и причем тут Значение=Наименование не очень понятно...
#12 by Abdul
не, ошибка в модуле обработки {Обработка.УниверсальныйОбменДаннымиXML(1689)}: Значение не является значением объектного типа (Добавить) почему сам не пойму..... Типа, то есть весь товар источника в каком либо документе, был равен товару с кодом например 00025 при загрузке....
#13 by Рэйв
На крайний случай можно так: В ПКС ПослеЗагрузки НужныйТов=Справочники.НайтиПоКоду("000025"); Для Каждого Стр из Объект.ТабЧасть Цикл
#14 by Рэйв
#15 by Рэйв
+не в ПКС а в ПКО :)
#16 by Abdul
не. выгружает нормально, а при загрузке ругается....
#17 by Abdul
ап
#18 by Abdul
никто, ниче  не скажет, да.........
#19 by Barmaglot
А этот элемент есть в базе-приемнике?
#20 by Abdul
да,есть.... а ты считаешь как правильно, 13 или 6? Или свой вариант.....
#21 by Abdul
ап
#22 by Abdul
оп
#23 by lxndr
у меня работает как в . Должно работать и как в . Ищи ошибку.
#24 by Abdul
Может вопрос глупый, но я не понимаю как для ПКО создать ПКС
#25 by Abdul
можно же только для ПКС закрепить ПКО....
#26 by lxndr
В форме настройки правил обмена на вкладке "Правила конвертации объектов" есть 2 табличных поля. Верхее из них содержит список ПКО, нижнее - список ПКС текущего ПКО. Нужно создать новое ПКО и для него в таблице ПКС добавить единственный новый элемент с приемником равным коду.
#27 by Abdul
вроде понял.... а я не так делал.... я в ПКС находил правило, по которому происходит обмен, и его правил.... )))) Дебил...
#28 by Barmaglot
У меня это требуется только для определенного вида документов, напр. реализация. Сделано ток: В ПКО Реализация перед загрузкой: Работает.
#29 by Abdul
А у меня почему то ругается на: ОписаниеОшибки         =  Метод объекта не обнаружен (НайтиПоНаименованию)
#30 by Barmaglot
Тогда подробнее - в каком модуле, текст строки...
#31 by Abdul
Ошибка в обработчике события ПослеЗагрузкиОбъекта    ОписаниеОшибки         =  Метод объекта не обнаружен (НайтиПоНаименованию) Ошибка при загрузке данных: {Обработка.УниверсальныйОбменДаннымиXML(1506)}: Ошибка в обработчике события ПослеЗагрузкиОбъекта    ОписаниеОшибки         =  Метод объекта не обнаружен (НайтиПоНаименованию)
#32 by Abdul
это уже при загрузке....
#33 by Abdul
может ты по почте свои правила перешлешь....
#34 by Barmaglot
А текст?
#35 by Abdul
перешли свои правила если не трудно, я их попробую поюзать... iskan@bk.ru
#36 by Barmaglot
Они у меня на локалке. Пиши свой текст, попробуем разобраться.
#37 by Abdul
я попробовал как  , изменил стандартные првила, на эти.... И дает такую ошибку...
#38 by Barmaglot
Стандартные - это какие? Где-то ошибка в синтаксисе.
#39 by Abdul
я беру те, которые есть в типовой УТ... без прописывания этой строки, все работает же.... релиз 10.3.1.17....
#40 by Barmaglot
Я про строку и говорю... И правил типовой УТ у меня нет.
#41 by Abdul
ну так которую ты сказал в , я ту и написал....
#42 by lxndr
строку дословно в студию
#43 by Abdul
В ПКО Реализация перед загрузкой: Номенклатуру товар завел....
#44 by Abdul
или я чего то не понимаю....  вы уж не обессудьте
#45 by Barmaglot
А почему ругается на ПКО "Номенклатура"? Там тоже что-то правил?
#46 by Abdul
да, точно, правил, забыл убрать )))) Ща, пробую ))) Не заметил.....  извиняюсь
#47 by lxndr
Обработчик "После загрузки" для ПКО документа: В этом случае надо еще избавиться от переноса элементов справочника "Номенклатура". Можно просто удалить ПКС из группы табличной части ПКО документа.
#48 by Abdul
Спасибо огромное, ))))) Получилось как в 47 )))))) А еще вопрос, Реквизит склад, остается не заполненым, почему такое может быть?
#49 by Abdul
а можно сделать так что бы товар сворачивался в один, а не разбивался по строкам документа?
#50 by Barmaglot
Т.е. одной строкой выводить?
#51 by Defender aka LINN
Не возражаю.
#52 by Abdul
да...
#53 by Barmaglot
Для проводок или для отображения?
#54 by Abdul
и то и то....
#55 by Abdul
что бы сумма в документе по строкам складывалась, и получалась общая сумма в первой строке.... наверное так....
#56 by Abdul
ап
#57 by Barmaglot
Опять же надо править "После загрузки". Сперва сумму получать, а потом формировать нужную строку, предварительно очистив ТЧ.
#58 by Defender aka LINN
Нафига? В ПередВыгрузкой объявить и заполнить ТЗ "КоллекцияОбъектов". Учите матчасть.
#59 by Abdul
А ты как делаешь?
#60 by Defender aka LINN
Я ж написал.
#61 by Abdul
подробнее можно, если нетрудно?
#62 by Barmaglot
Можно и так, только если потом захотят в документе видеть копию реализации из торговли, а проводки свернуть, то придется все полностью переделывать, а так только убрать свертку по ТЧ.
#63 by Abdul
Я сделал во так: Но на Загрузить ругается, почему? Типа использую функцию как процедуру....
#64 by Abdul
ап
#65 by Abdul
ап.......................
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С