|   |   | 
| 
 | КД. Перенос документа по реквизиту | ☑ | ||
|---|---|---|---|---|
| 0
    
        Odavid 29.03.12✎ 01:00 | 
        Надо перенести ПлатежноеПоручениеИсходящее - только с операцией "ПеречислениеЗП".
  Рисую в ПКО "Перед загрузкой": Если Источник.ВидОперации = Перечисления.ВидыОперацийППИсходящее.ПеречислениеЗП Тогда Отказ = Ложь; Иначе Отказ = Истина; КонецЕсли; - переносит все равно все платежки (по всем операциям). В ПВД просто стоит выгружать ППИ. | |||
| 1
    
        Aleksey 29.03.12✎ 01:01 | 
        Откуда в "Перед загрузкой" Источник??     | |||
| 2
    
        дущ 29.03.12✎ 01:03 | 
        (0) Вот этот код что ты привел (только Источник замени на Объект) вставь в Перед выгрузкой ПВД.     | |||
| 3
    
        Aleksey 29.03.12✎ 01:06 | 
        (2) Не путай, он и без тебя прекрасно сам запутается.
  Источник при выгрузки Объект при загрузки | |||
| 4
    
        Odavid 29.03.12✎ 01:06 | 
        (1) а разве ПередЗагрузкой - это не перед загрузкой в приемник?
  (2) понял | |||
| 5
    
        Aleksey 29.03.12✎ 01:07 | 
        (4) Да, но откуда при загрузки источник?     | |||
| 6
    
        Odavid 29.03.12✎ 01:08 | 
        (5) из справки взял:
  Перед загрузкой Условия возникновения события Только для платформы V8. Событие выполняется перед загрузкой объекта. Возможен отказ от загрузки, например, в случае невыполнения каких-либо условий. Загружаемый в БД объект еще не инициализирован. Параметры: Источник - Строка. Представление объекта источника. Пустая строка, если представление объекта источника не выгружалось. | |||
| 7
    
        Aleksey 29.03.12✎ 01:09 | 
        (6)  Учу читать, Дорого     | |||
| 8
    
        Aleksey 29.03.12✎ 01:10 | 
        Источник - СТРОКА.(!) Представление (!!) объекта источника
  Откуда у строки вдруг появится вид операции | |||
| 9
    
        Aleksey 29.03.12✎ 01:11 | 
        Перед выгрузкой
  Условия возникновения события Событие выполняется перед выгрузкой каждого объекта в файл обмена, не зависимо от того как выгружается объект по правилу выгрузки данных либо потому что на него есть ссылки. Событие вызывается, когда узел объекта приемника еще не создан и недоступен. Возможен отказ от выгрузки, например, в случае невыполнения каких-либо условий. Параметры: Параметры - Структура, в которой хранятся переменные доступные во всех обработчиках Источник - Произвольный - выгружаемый объект источник (ссылка или произвольные данные) Отказ - Булево - Если Истина, то объект не выгружается Пример: Отказ = Источник.ЭтоГруппа(); Если (ПустаяСтрока(Источник.Адрес) = 1) И (ПустаяСтрока(Источник.АдресПочт) = 1) И (ПустаяСтрока(Источник.Телефоны) = 1) И (ПустаяСтрока(Источник.eMail) = 1) Тогда Отказ = 1; КонецЕсли; | |||
| 10
    
        Odavid 29.03.12✎ 01:11 | 
        (3) Перед выгрузкой тоже нет объекта.
  Перед выгрузкой Условия возникновения события Событие выполняется перед выгрузкой каждого объекта в файл обмена, не зависимо от того как выгружается объект по правилу выгрузки данных либо потому что на него есть ссылки. Событие вызывается, когда узел объекта приемника еще не создан и недоступен. Возможен отказ от выгрузки, например, в случае невыполнения каких-либо условий. Параметры: Источник - Произвольный - выгружаемый объект источник (ссылка или произвольные данные) Так что на самом деле и как делать? | |||
| 11
    
        Aleksey 29.03.12✎ 01:12 | 
        (10) И это противоречит тому что написано в (3)???     | |||
| 12
    
        Odavid 29.03.12✎ 01:12 | 
        (8) да, недоглядел - увидел Источник, и посчитал его за ссылку.. :)     | |||
| 13
    
        Odavid 29.03.12✎ 01:13 | 
        (11) не (3), а (2) противоречит ))     | |||
| 14
    
        Aleksey 29.03.12✎ 01:13 | 
        В ПКО (!) Перед выгрузкой 
  Если Источник.ВидОперации = Перечисления.ВидыОперацийППИсходящее.ПеречислениеЗП Тогда Отказ = Ложь; Иначе Отказ = Истина; КонецЕсли; | |||
| 15
    
        Odavid 29.03.12✎ 01:14 | 
        Т.е. "ПередВыгрузкой" ставлю:
  Если Источник.ВидОперации = Перечисления.ВидыОперацийППИсходящее.ПеречислениеЗП Тогда Отказ = Ложь; Иначе Отказ = Истина; КонецЕсли; - и все, что не ПеречислениеЗП, не выгружается? Или опять не так? | |||
| 16
    
        Odavid 29.03.12✎ 01:15 | 
        (14) понял, спасибо ))     | |||
| 17
    
        Odavid 29.03.12✎ 01:33 | 
        а какая разница между ПередВыгрузкой в ПКО и ПередВыгрузкой в ПВД?     | |||
| 18
    
        Aleksey 29.03.12✎ 01:37 | 
        (17) Огромная     | |||
| 19
    
        Aleksey 29.03.12✎ 01:39 | 
        В ПВД - идет выборка объектов, соответственно там ПередВыгрузкой ты можешь сформировать свой список объектов (Например список документов). Т.е. например сделать запрос к документам по условию и выгружать документы попавшие в запрос
  А ПКО - это конвертация конкретного объекта который был выбран в ПВД | |||
| 20
    
        Odavid 29.03.12✎ 01:39 | 
        (18) так вроде одно и тоже - в ПКО перед выгрузкой в файл, в ПВД - тоже перед выгрузкой.
  И еще - по отбору из справочника можно задать вопрос? или новую тему создать? | |||
| 21
    
        Odavid 29.03.12✎ 01:41 | 
        (19) т.е. в ПВД - обработка ВСЕХ объектов данного вида, а в ПКО - только правило конвертации отдельного объекта.
  Понятно. | |||
| 22
    
        Aleksey 29.03.12✎ 01:43 | 
        (21) почти, за исключением того что в принципе ничего не мешает выгружать все документы в одном ПВД, ибо произвольный алгоритм и ВыгрузитьПоПравилу творят чудеса     | |||
| 23
    
        Aleksey 29.03.12✎ 01:44 | 
        Т.е. в ПВД описываем ЧТО будем выгружать, а в ПКО - КАК, т.е. правила конвертации объекта источник в объект приемник     | |||
| 24
    
        Aleksey 29.03.12✎ 01:49 | 
        Т.е. сначало отрабатывает ПВД передВыгрузкой, где ты можешь указать по какому правилу обрабатывать, в принципе можно и тут указать условие, как сказал (2)
  Т.е. в ПВД перед выгрузкой Если Объект.ВидОперации = Перечисления.ВидыОперацийППИсходящее.ПеречислениеЗП Тогда Отказ = Ложь; Иначе Отказ = Истина; КонецЕсли; Затем отрабатывает правило из ПКО только тут уже объект - это источник ПКО Перед выгрузкой Если Источник.ВидОперации = Перечисления.ВидыОперацийППИсходящее.ПеречислениеЗП Тогда Отказ = Ложь; Иначе Отказ = Истина; КонецЕсли; | |||
| 25
    
        Odavid 29.03.12✎ 01:50 | 
        (22) вот у меня со справочниками не получилось.
  СПРАВОЧНИК "ФИЗЛИЦА" ФИО ФИЗЛИЦ в "После загрузки в файл": Запрос = Новый Запрос; Запрос.УстановитьПараметр("ДатаСреза", КонецДня('20110320')); Запрос.УстановитьПараметр("Объект", Источник); //Выгрузка ФИО Запрос.Текст = "ВЫБРАТЬ | ФИОФизЛицСрезПоследних.Период, | ФИОФизЛицСрезПоследних.ФизЛицо, | ФИОФизЛицСрезПоследних.Фамилия, | ФИОФизЛицСрезПоследних.Имя, | ФИОФизЛицСрезПоследних.Отчество |ИЗ | РегистрСведений.ФИОФизЛиц.СрезПоследних(&ДатаСреза, ФизЛицо = &Объект) КАК ФИОФизЛицСрезПоследних"; Запрос.УстановитьПараметр("Объект", Источник); Выборка = Запрос.Выполнить().Выбрать(); Сообщить(Выборка.Количество()); Пока Выборка.Следующий() Цикл ВыгрузитьПоПравилу(Выборка, , , , "ФИОФизЛиц"); КонецЦикла; - работает. тут же пишу выгрузку паспортных данных, чтоб все вместе сразу: Запрос = Новый Запрос; Запрос.Текст = " |ВЫБРАТЬ | ПаспортныеДанныеФизЛицСрезПоследних.Период, | ПаспортныеДанныеФизЛицСрезПоследних.ФизЛицо КАК ФизЛицо, | ПаспортныеДанныеФизЛицСрезПоследних.ДокументВид, | ПаспортныеДанныеФизЛицСрезПоследних.ДокументСерия, | ПаспортныеДанныеФизЛицСрезПоследних.ДокументНомер, | ПаспортныеДанныеФизЛицСрезПоследних.ДокументДатаВыдачи, | ПаспортныеДанныеФизЛицСрезПоследних.ДокументКемВыдан, | ПаспортныеДанныеФизЛицСрезПоследних.ДокументКодПодразделения, | ПаспортныеДанныеФизЛицСрезПоследних.ДатаРегистрацииПоМестуЖительства |ИЗ | РегистрСведений.ПаспортныеДанныеФизЛиц.СрезПоследних(&ДатаСреза, ФизЛицо = &Объект) КАК ПаспортныеДанныеФизЛицСрезПоследних"; Запрос.УстановитьПараметр("ДатаСреза", КонецДня('20110320')); //Дата Запрос.УстановитьПараметр("Объект", Источник); //Контактные лица, Физические лица РезультатЗапроса = Запрос.Выполнить().Выбрать(); Сообщить("Количество строк контактной информации """ + Объект.Наименование + """: " + Выборка.Количество()); Пока Выборка.Следующий() Цикл ВыгрузитьПоПравилу(Выборка, , , , "ПаспортныеДанныеФизЛиц"); КонецЦикла; - не работает.. | |||
| 26
    
        Aleksey 29.03.12✎ 01:55 | 
        А файл сам смотрел? Оно вообще выгружается?     | |||
| 27
    
        Odavid 29.03.12✎ 02:13 | 
        (26) конечно выгружается.
  Только справочники - физлица по запросу, а паспортные - только принудительно если на них сделать ПВД. А хотел выгрузить по Владельцу сразу, вместе с физлицом. | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |