Имя: Пароль:
1C
1С v8
КД2 ПВД без ПКО
0 applesound
 
01.12.20
12:11
Добрый день.
Переношу данные из УТ 10.3 в БП 3.0. Использую правила обмена разработанные в КД2.
Цель: Сформировать документы в БП с определённой последовательностью
Последовательность:
1. Док. Поступление на расчётный счёт
2. Док. Операция
3. Док. Отчёт о розничных продажах

Текущие правила обмена:
1. Док. Поступление на расчётный счёт формирует ПВД ПлатежноеПоручениеВходящее Порядок 150
2. Док. Операция формирует ПВД ОтчетОРозничныхПродажах, событие ПослеОбработки, Порядок 850
3. Док. Отчёт о розничных продажах формирует ПВД ОтчетОРозничныхПродажах, Порядок 850

Если правильно понимаю последовательность формирования документов, изначально сформируется Поступление на расчётный счет, потом Отчёт о розничных продажах и последний документ Операция.
Для установки необходимой последовательности формирования документов необходимо создать отдельное ПВД без ПКО (не знаю
пока возможно ли такое), перенести в событие ПослеОбработки весь код из ПВД ОтчетОРозничныхПродажах событие ПослеОбработки и задать Порядок между 150 - 850.
Поправьте если где ошибся и как создать ПВД без ПКО?
1 polosov
 
01.12.20
12:14
(0) Переноси все как есть.
Все действия (перепроведение и все такое) можно сделать после загрузки данных.
2 mistеr
 
01.12.20
12:20
(0) "Последовательность" в смысле хронологическая или у тебя там ссылки друг на друга?
3 applesound
 
01.12.20
12:37
У меня док. Операция должна зачитывать авансы после выгрузки документа Поступление на расчётный счёт, а она видимо формируется после док. Отчёт о розничных продажах.
Перепроведение не поможет, так как операция на участвует в этой процедуре.
4 mistеr
 
01.12.20
12:45
(3) Как док Операция может вообще что-либо зачитывать, если в нем нет алгоритмов проведения?
Или у тебя при загрузке алгоритм?
5 applesound
 
01.12.20
13:02
У меня в ПВД ПослеОбработки написан алгоритм формирования операции.
6 hhhh
 
01.12.20
13:28
(5) тогда последовательность тебе вообще не нужна. При выгрузке операции будут подтягиваться и соответствующие документы, как реквизиты этой операции. Но ПКО лучше задай для верности. Почему иы ркшилделать бнз ПКО?
7 applesound
 
01.12.20
15:51
(6) Моё решение сформировать ПВД без ПКО не факт что верное.
Цель: выполнить формирование документа Операция на стороне приёмника после Поступления на расчётный счёт. Возможно выходом будет перенос алгоритма формирования док. Операция из ПВД ОтчетОРозничныхПродажах, событие ПослеОбработки в ПВД ПлатежноеПоручениеВходящее, событие ПослеОбработки.
8 Йохохо
 
01.12.20
15:58
(7) ведь после загрузки доков вся информация для заполнения операций есть? ну и бахни создание операций в глобальный "После загрузки данных"
9 mistеr
 
01.12.20
16:35
(7) Для формирования проводок достаточно информации из Поступления? Если да, тогда тебе нужно событие После загрузки Поступления. Сначала делаешь Записать(), потом запускаешь свой алгоритм.
10 applesound
 
01.12.20
17:24
(9) Получается нужно писать не в ПВД ПослеОбработки, а в ПКО ПослеЗагрузки ?
11 Йохохо
 
01.12.20
17:33
(10) подумай про глобальник, тебе же надо по факту после проведения Поступления операцию сделать, заодно полезный алгоритм напишется
12 VladZ
 
01.12.20
17:35
Раздели задачу на две части:
1. Загрузка данных.
2. Формирование документов "Операция".

Встречный вопрос: нельзя отказаться от документа "Операция"?
13 hhhh
 
01.12.20
17:59
(10) пвд - это правило выгрузки. На стороне приемника их вообще нет. Там только в приемнике ПослеЗагрузки. Поэтому тебе надо как в (1), В процессе загрузки формируешь таблицу или массив документов Поступление на расчетный счет. А в конце уже в ПослеЗагрузкиДанных обрабатываешь этот массив и форимируешь документы Операции.
14 applesound
 
01.12.20
18:34
(11) Так всё что написано в глобальном модуле событие ПослеЗагрузкиДанных обрабатывается в самом конце или я не прав?
Всегда считал что последовательность выполнения событий в КД2 следующая: ПКС -> ПКО -> ПВД -> Глобальный модуль. Внутри каждого правила события выполняются сверху вниз.
Походу для того чтобы выполнить создание док. Операция после выполнения Поступления на расчётный счёт, необходимо алгоритм формирования док.Операции выполнить в ПВД событие ПослеОбработки.
Выгружу документы, возможно Ваш вариант тоже отработает.
15 applesound
 
01.12.20
18:41
(12)
От операции не отказаться, так-как авансы зачитываем ежедневно. Менеджеры каждый день контролируют взаиморасчёты, и заставить выполнять ежедневный контроль последовательности не получится.
Разделить задачу: тут-то и застрял, загрузка данных и формирование док.Операция происходит одним ПВД ОтчетОРозничныхПродажах. Кроме как перенести алгоритм формирования док.Операция в глобальный модуль или в другой ПВД других вариантов не вижу.
16 applesound
 
01.12.20
18:43
(13) Ок, попробую.