#0
by гвость
Есть правило выгрузки данных (ПВД) в нем в обработчике "перед обработкой", есть код который заполняет параметр "входящие данные". Это ПВД повешено на правило конвертации объектов (ПКО). Поскажите пожалуйта почему может быть такое - когда ПКО выполняется после ПВД. Т.е. ПКО работает с незаполненным параметром "входящие данные". В ПВД указано правило ПКО, а также способ выборки произвольный алгоритм. Проверял отладчиком.
#2
by GenV
В КД в окне обработчиков есть замечательная кнопка "Информация по обработчикам..." ЗЫ Это, если справку трудно открыть
#4
by GenV
Зависит от того какой произвольный алгоритм: 1) Если меняешь ВыборкаДанных, то для этого используется ИсходящиеДанные 2) Если через ВыгрузитьПоПравилу, то смотреть правильность передачи входящих данных
#5
by гвость
у меня в ПВД, произвольный алгоритм и ВыгрузитьПоПравилу делаю так в ПКС на правиле ДоговорыКонтрагентов, например Значение = ПолучитьЗначение(ВходящиеДанные, "Организация"); только вот после ВыгрузитьПоПравилу(...) у меня не отрабатывает код
#6
by GenV
А не проще было просто поставить галочку "Получить из входящих данных" для каждого реквизита и не писать: Значение = ПолучитьЗначение(ВходящиеДанные, "один из реквизитов")? КД сама подставит по имени реквизита значения ... Входящие данные из ВыгрузитьПоПравилу доступны только в обработчиках ПКО. Что бы в обработчиках ПКС получить входящие данные нужно передать их в ВыгрузитьПоПравилу как ИсходящиеДанные...
#7
by Defender aka LINN
Ты определись таки, что у тебя первым выполняется. А то в заголовке одно, в сабже другое... ПВД у тебя одно? Или еще есть?
#8
by гвость
через галочкe ни чего не работает. про входящие данные понял, проверил, доступны в ПКО да вообще всё вы правильно тут говорите почему у меня не исполняется код ПКС??? ПВД у меня много, разобравшись с входящими данными, сначала выполняется ПВД, потом ПКО, а вот код ПКС нефига не выполняется
#9
by GenV
Потому что во ВходящиеДанные ПКС попадают ИсходящиеДанные ПКО ... Писал уже. Поставь галки "Из входящих данных" у реквизитов ПКО договора, все обработчики присваивания значений из ПКС убери, либо сам со своим велосипедом ПКС разбирайся.
#10
by гвость
9) сделал так в ПВД в ПКО в ПКС поставил галку получить из входящих ни чего в итоге не получается. ИМХО не правильная последовательность, если я в ПКС напишу код например Сообщить("Отработал"); то это сообщение выскочит перед кодом ПВД, что я и говорил в первом посте, или это так и должно быть? Как мне кажется любой код ПКС должен выполнятся в последнюю очередь, а у меня он выполняется сразу, а потом уже коды ПВД и ПКО.
#11
by GenV
Порядок выполнения: 1) ПВД ПередОбработкой 2) ПКО ПередВыгрузкой ПКО 3) ПКО ПриВыгрузке 4) ПКС ПередВыгрузкой 5) ПКС автополучение значения из ВходящиеДанные по имени свойства если есть галка 6) ПКС ПриВыгрузке 7) конвертация значения по ПКО свойства (в ПКО свойства передаются ИсходящиеДанные как ВходящиеДанные) 8) ПКС ПослеВыгрузки можешь проверить через сообщить или в отладчики ВыгрузитьПоПравилу, ВыгрузитьГруппуСвойств, ВыгрузитьСвойства
#12
by гвость
через сообщить у меня идет ПКО (Перед выгрузкой), ПКС (Перед выгрузкой) , ПВД (Перед обработкой) остальные не рассматривал,т.к. не пользую пока короче надо книгу по КД читать, попробую сегодня достать, т.к. это похоже на ковыряние в навозе, не иначе
#13
by GenV
Небось Сообщить в ПВД после ВыгрузитьПоПравилу поставил? Или в других ПВД эти ПКО используешь и выгружаешь раньше.
#16
by GenV
А как у тебя тогда выгрузка договора вызвалась? Сообщить до или после Выгрузить по правилу?
#17
by гвость
> А как у тебя тогда выгрузка договора вызвалась? Ну есть же ПВД:Договоры контрагентов у него в обработчике "Перед обработкой" стоит код Сообщить("ПВД"); У ПКО:Договоры контрагентов в обработчике "Перед выгрузкой" стоит Сообщить("ПКО") У свойства ПКО стоит сообщить("ПКС") вот такая картина > Сообщить до или после Выгрузить по правилу? я вообще всё это убрал, всё закоментировал
#18
by GenV
Меня вот это интересует :) >>Ну есть же ПВД:Договоры контрагентов у него в обработчике "Перед обработкой" стоит код Сообщить("ПВД"); у тебя вот так:? Сообщить("ПВД") ???? - правильно
#20
by GenV
т.е. выгружаешь все договора стандартной выборкой? И у тебя сначала выгружается сам по себе договор, а потом срабатывает выгрузка его через ПВД? :)
#21
by гвость
В итоге разобрался я со всеми этими делами, написал я эти правила, совсем не так как раньше думал, вообще убрал одно ПВД, а его функционал частично перекинул в другое ПВД, но я так и не понял, хотя провел массу экспериментов, принципа работы ПВД инициируемо изначально из ПКС путем указания в ПКС того ПКО по которому будет идти конвертация. Пришёл к выводу что нельзя так делать, КД этого не понимает. Я хотел чтобы именно так и было, в ПКС указал ПКО, и система перед запуском этого ПКО должна была запустить ПВД, но этого не происходит. А обычная схема ПВД->ПКО->ПКС эта работает нормально
#24
by Defender aka LINN
Ничего не зря. ПВД - всего лишь способ получить выборку. И выносить туда что-либо еще не есть правильно.
#25
by гвость
было бы не лишним иметь возможность инициировать запуск ПВД из ПКС думаю в будущем она появится
#26
by Defender aka LINN
Чего? Ты вообще сам-то это представляешь? При обработке ПКС уже идет запись свойств объекта в файл. КУДА ты там впихнешь выборку? А ВыгрузитьПоПравилу никто не мешает в ПКО использовать.
#33
by GenV
:) Принцип работы КД - ПВД->ПКО. Зачем эмулировать вызовы ПВД перед выгрузкой данных, если это и так КД делает?
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Почему в общем модуле документа нет события "После записи"?
- Почему уменьшается размер файла выгрузки базы после обновления
- COM соединение. Почему выполняется ПередЗаписью() при СоздатьДокумент()
- КД2: игнорирует период выгрузки при выгрузки данных из конфигурации на базе v8.0
- Конвертация данных - Правило выгрузки объекта
- Планы обмена: почему очень большой файл выгрузки?
- Почему не удалились таблицы NG после реструктуризации?
- КД. Как правильно обратиться после выгрузки к ссылке выгружаемого объекта?
- КД: как изменить дополнительные настройки для всех ПКО, не открывая каждое ПКО?
В этой группе 1С
- Предостовление обновлений 1С без ИТС
- УПП. Передача материалов в эксплуатацию не делает проводок.
- Подскажите сколько стоит Свернуть базу 1с77 типа ТИС нетиповой?
- v7: Работа с журналом расчетов 7.7
- На каком ИТС есть УТ 10.3.3.3 или УТ 10.3.4.14 ?
- Почему через COM-соединение не доступны функции глоб. контекста 1С
- Как получить ставку НДС товара?
- Открыть вторую форму из первой во внешней обработке
- AdoDB и XLS, созданный в Oo - косяк...
- Перерасчет (Радченко)
- Вопрос по отчету в 1С ЗиК 7.7. "Лицевой счет (Форма Т-54а)"
- Срочно! Как открыть файл с расширением msg
- v8: ошибка при выгрузке: "ошибочный порядок записи XML"
- Открытие отчета из документа
- Как назначить колонке ТЗ состовной тип данных?
- Произвольное выражение в конструкторе запроса
- Можно при настройке схемы компоновки в определить качестве ресурса не числовое поле?
- Как проверить существует ли таблица в word документе?
- Проводки в документе списание товаров
- Сколько лет мы обязаны хранить бухгалтерские базы