КД2.0: Реквизит ТЧ получить из входящих данных #437968


#0 by Живой Ископаемый
Переношу данные из 77 в 8.1. Документ с ТЧ в Документ с ТЧ... В 8.1 есть реквизит ТЧ СчетУчета, а в в77 этот счет учета хранится в реквизите ТМЦ... Что мне нужно написать, чтобы до него добраться? Если бы скажем ТМЦ - был бы реквизитом шапки, я бы просто написал Источник.ТМЦ.Счет... НО я не могу через Источник обратится к текущей выгружаемой строке табличной части.. Поэтому и вопрос - может есть какой-то другой способ? зы. Сами строки переносятся - все окей...
#1 by GenV
Жуть, да еще с голосовалкой ) ЗЫ В справке к обработчикам все есть: ОбъектКоллекции
#2 by Живой Ископаемый
2 А почему вас в аське нет? зы. Спасибо, сейчас попробую
#3 by Живой Ископаемый
э.. И еще вопрос - видимо нужно написать не просто : ? или как?
#4 by Господин ПЖ
нафига... указал правило и все.
#5 by Живой Ископаемый
2 как это выглядит в коде?
#6 by GenV
Аска на работе максимум ограничена Там ручками правило для счета нужно выбрать в поле ) Кода "Значение = ОбъектКоллекции.ТМЦ.Счет;" достаточно
#7 by Живой Ископаемый
2 ок, я понял... видимо или счет странный или еще что - не перенесся... спасибо
#8 by Живой Ископаемый
Так-с, с этим получилось, огромное спасибо вам двоим.. :) А теперь вот еще вопрос... Хочу помимо всего прочего, вместе с документом перенести его движения... Примерно таким способом: Что мне написать в Обработчике? Могу типа: Или как-то по-другому нужно? Чтобы потом, в ПКС написать: Значение = ОбъектКоллекции.СчетДт;, Например Или Значение = ВходящиеДанные.СчетДт?
#9 by GenV
С регистром бухгалтерии пример в книжке по КД был.
#10 by Господин ПЖ
не то делаешь. Оставь галку "из входящих" только для самой группы правил "Хозрасчетные"
#11 by Господин ПЖ
для элементов внутри группы - убери. Формируй в ПКО (или подавай в него уже готовую) таблицу значений с такой же структурой. Т.е. если у тебя ПКО всё получает из входящих это будет выглядеть так:
#12 by Живой Ископаемый
2 мне ужасно стыдно, но этот пример меня испугал.. :)
#13 by Господин ПЖ
В ПВД Выгрузки документа: ВходящиеДанные.Вставить("Организация", источник.Организация); .................. и прочие кишки Хозрасчетные = сохдаещь тз с нужной структурой, заполняешь
#14 by Господин ПЖ
+ упс. Только если мы в ПВД то не источник.НомерДок, а выборка.НомерДок или что-то в этом роде
#15 by Живой Ископаемый
2 Пару моментов еще освети: а) в какой обработчик ПВД документа это вставить? И вообще - предполагается что ВходящиеДанные будут что именно содержать? Типа все реквизиты документа? И, если учитывать то Выборка - это что? б) тз нужной структуры - на что я опираюсь при создании этой структуры - на струкутур РБ "Хозрасчетный" восьмерки, на свойства которы я добавляю внутри Группы Свойств "Хозрасчетный" конвертации или что-то еще? извините за ламерсие вопросы, вроде как кое-что и получается и начинаю понимать, но многое все равно остается непонятным
#16 by Живой Ископаемый
2 Ntv что там создаются еще какие-то доп узлы в самом ХМЛе, если я правильно понимаю.. Если честно - не готов к этому... как-то через входящие данные мне кажется более наглядно...
#17 by Живой Ископаемый
ап? и вас в аське тоже нет...
#18 by Господин ПЖ
>>в какой обработчик ПВД документа это вставить? У Правила Выгрузки Данных событий как таковых нет. Оно само по себе. Это то с чего начинается выгрузка, набор правил выгрузки. >>И, если учитывать то Выборка - это что? Выборка - ну это обход результата запроса например, в общем некий источник, из которого черпаются данные.
#19 by Живой Ископаемый
2 Ну... я правильно понял, это здесь: Можно в "Перед обработкой"? И там будет весь этот код:
#20 by Господин ПЖ
>>А по какому правилу? ну по какому тебе надо, по такому и пиши. только над списком значений нужно обганизовать выборку документов...Т.е.:
#21 by Живой Ископаемый
2а, то есть выборка - это те документы ПриходнаяНакладная в в77 которые мне нужно выгрузить? И соответственно правило для этого же документа? Теперь кажется понял, спасибо
#22 by Господин ПЖ
только всеэто фихня... рекомендую все таки посидеть над книжкой Бояркина и примерами. У тебя тутдвижения по БУ, в них алгоритмы используются. Так просто с лету перегрузить аналитику по счетам у тебя не получится раз в простых вещах путаешься
#23 by Живой Ископаемый
2 обязательно алгоритмы? Я просто думал по примерно такой аналогии - Табличная Часть у меня перегрузилась идеально, Набор движений - практически та же табличная часть... Аналитика вся содержится и так в табличной части, а она опять - же уже перенеслась, значит ее можно заполнить и для Набора Движений "Хозрасчетный" в документе в8
#24 by Живой Ископаемый
вопрос только в том, чтобы подготовить для этой этой виртуальной табличной части  - "Хозрасчетный" - источник, коллекцию...
#25 by Живой Ископаемый
хы.. Получилось. У ПКГС есть обработчик "ПередОбработкой" в этом обработчикие мы можем подготовить "Вирутальную ТЧ"- коллекцию объектов... И я написал такое: Но вы знаете, вы таки правы на счет книжки бояркина.. На следующий день после того как я перенес проводки документа из в77 в в8, я нашел у него на странице 149 почти тот же самый код... Но уже конечно и с субконто... Так что сейчас попробую заполнить в перенесенных проводках и аналитику...
#26 by Живой Ископаемый
Еще вопрос.. Вот например в в77 Банковская Выписка - это документ с табличной частью, а в в8, особенно в БП это документ ПлатежноеПоручениеВходящее или ПлатежноеПоручениеИсходящее... как перенести отдельную строку из БВ в77 в отдельный документ в в8? У бояркина и в примерах не нашел...
#27 by Господин ПЖ
разницы от никакой. Обходишь тч, по каждой формируешь ВходящиеДанные для документа и ВыгрузитьПоПравилу
#28 by Живой Ископаемый
2 Но сначала я должен сформировать ПКО? Источник - виртуальный, а Приемник - ПлатПоручениеВходящее, допустим? и все реквизиты заполнять из входящих данных? чисто случайно - нет примера такой выгрузки, в хмл-файле, а? :)
#29 by Господин ПЖ
ты пример сам написал в . + ПКО на "ПлатПоручениеВходящее" с получанием кишков из входящих
#30 by Живой Ископаемый
ок, сенкс...
#31 by Живой Ископаемый
Совсем забыл, а как в в77 задается период для запроса: Как заполнить значения параметров НачДата и КонДата?
#32 by GenV
в коде ) НачДата = ... КонДата = ...
#33 by Живой Ископаемый
точно, спасибо. :)
#34 by Живой Ископаемый
хм.. Не получается кое-что... ==== Итак: Существует правило выгрузки данных "БанковскаяВыписка00001" способ отбора данных - Произвольный Алгоритм. В обработчике "перед обработкой" которого написан следующий код: ==== В ПКО все реквизиты получаю из входящих данных и пишу в обработчиках перед выгрузкой например что-то вроде Значение = Источник.Дата; или короче - по аналогии с тем как делаю для обычных документов, которые получаю обычной выборкой... Сохраняю правила и модуль, и пытаюсь выгрузить данные.. В итоге получаю кучу ошибок: Начало выгрузки:   22.10.09 17:25:07 Начало обработки правила выгрузки данных:  БанковскаяВыписка00001                         Выгружаю ПП входящее Банк. выписка БВ-0000001 (22.11.07) Конвертация объекта или получение ссылки:     Ошибка исполнения обработчика:  ПКС_ПередВыгрузкой_ПлатежноеПоручениеВходящее_Дата_Свойство1  - Значение не представляет агрегатный объект (Дата) Ошибка исполнения обработчика:  ПКС_ПередВыгрузкой_ПлатежноеПоручениеВходящее_Организация_Реквизит8  - Значение не представляет агрегатный объект (Организация) Конвертация объекта или получение ссылки:  ТОВ "МояОрганизация"  (Справочник) Ошибка исполнения обработчика:  ПКС_ПередВыгрузкой_ПлатежноеПоручениеВходящее_ДатаВходящегоДокумента_Реквизит16  - Значение не представляет агрегатный объект (Дата) Ошибка исполнения обработчика:  ПКС_ПередВыгрузкой_ПлатежноеПоручениеВходящее_Номер_Свойство2  - Значение не представляет агрегатный объект (Номер) Ошибка исполнения обработчика:  ПКС_ПередВыгрузкой_ПлатежноеПоручениеВходящее_Комментарий_Реквизит6  - Значение не представляет агрегатный объект (Комментарий) Ошибка исполнения обработчика:  ПКС_ПередВыгрузкой_ПлатежноеПоручениеВходящее_Контрагент_Реквизит7 и так далее в конце пишет Выгружено объектов:   48 Окончание выгрузки:   22.10.09 17:25:26 ХМЛ с объектами создан. И самое прикольное, что я даже могу его загрузить - и у меня появляются документы... Однако не все так ладно - потому что если я например пытаюсь игнорировать эти ошибки и загрузить точно также проводки как для тех документов которые выбираю обычной выборкой, то проводки не загружаются... Может кто подскажет почему валят ошибки?
#35 by Живой Ископаемый
А, стоп, отбой.. несмотря на ошибки даже и проводки загружаются.. Что мне вовсе непонятно... Но ладно, сейчас главное загрузить, потом попробую разобраться...
#36 by GenV
Ничего удивительного ... Ты же в ВыгрузитьПоПравилу передаешь не источник, а входящие данные
#37 by Живой Ископаемый
2 то есть должен был писать Значение = ВходящиеДанные.Дата; ?
#38 by GenV
Почти, если написать код для 7.7 ... ЗЫ Вообще достаточно поставить галку у свойства "Получитать из входящих данных", если имя приемника совпадает с именем в входящих данных. И табличную часть тоже сразу можно готовой передать в список.
#39 by Живой Ископаемый
2 у тебя чисто случайно нет файла правил с таким примером? Я в приницпе движения перенес, но остались вопросы некоторые - хочу по горячим следам на выходных с ними разобраться...
#40 by GenV
Ставишь демо конфу КД. В группе "Типичных примеры" есть "перенос остатков регистра накопления". Там правда для 8 и ВыгрузитьПоПравилу формируется в алгоритме ПКД, но принцип тот же.
#41 by Живой Ископаемый
2 Ну мне было интересно как раз из 77 в 80.. у бояркина тоже есть примеры, но все равно - всего они не покрывают.
#42 by Господин ПЖ
>>всего они не покрывают мозг тебе на что... ты в деталях вязнешь не понимая главного - принципа работы.
#43 by GenV
Прям большая разница ) Вместо Новый - СоздатьОбъект, вместо Структура - СписокЗначений. Ты (и тебе) уже все написал ...
#44 by Живой Ископаемый
принцип я понял по крайней мере в общих чертах... Я конечно могу и отладчиком пройтись и посмотреть что передается в каждую процедуру, но было бы легче если бы был пример
#45 by Живой Ископаемый
ну ладно... так бы сказали что жадные.. или что у самих нет...
#46 by Господин ПЖ
какие тебе еще примеры нужны? есть книжка, хелп, отладчик
#47 by GenV
Не, знания должны приходить через собственный труд ) ... Иначе не интересно.
#48 by Живой Ископаемый
ладно, в понедельник поговорим....
#49 by Живой Ископаемый
Нашел в чем ошибка была... Переписывая как у Бояркина, не учел того, что например у меня правила для Субконто называется "ВидыСубконтоХозрасчетные" а не "ВидыСубконто"... И потом - пошло-поехало... Сразу этого не видно - Происходит ошибка, пытаюсь как-то или выцепить ошибку в отладчике, или редуцировать все до минимума чтобы локализовать ее, получается вношу в правила еще кучу изменений - типа - а вдруг повлияет.. И вот эти вот уже изменения - может они даже бывают и такие, которые идут вразрез с принципом работы - просто уже от отчаяния... Все заработало, все субконто тоже переносятся.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

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