|
Конвертация. Синхронизация документа между базами | ☑ | ||
---|---|---|---|---|
0
Wefast
17.04.23
✎
17:29
|
Есть самописный обмен который передает между базами файл выгрузки при записи документа.
Собственно столкнулся с проблемой, что не достаточно просто в пко добавить "Проведен". По факту документ не проводится. в обработчике "Перед загрузкой" можно установить режим записи, но там нет Источник.Проведен или Объект.Проведен Если я напишу в После загрузки Если НЕ Объект.Проведен Тогда Объект.Записать(РежимЗаписиДокумента.ОтменаПроведения); Иначе Объект.Записать(РежимЗаписиДокумента.Проведение); КонецЕсли; Этого будет достаточно? Не нравится мне правда что идет двойная запись. Надо будет еще как то транзакцию правильно добавить. В обработке вроде есть реквизит ИспользоватьТранзакции, но отработает ли он нужным мне способом не понятно. И по факту загрузки не плохо бы получить сообщение почему документ например не может записаться Видел на инфостарте тему, но там какой то универсальный метод для глобального переноса данных, на вид слишком замороченно. У меня летает 1 документ и элементы 1 сопутствующего справочника |
|||
1
PuhUfa
17.04.23
✎
14:43
|
(0) ты бы для начала просто написал что тебе надо... без вот этих вот:
Если НЕ Объект.Проведен Тогда Объект.Записать(РежимЗаписиДокумента.ОтменаПроведения); |
|||
2
Wefast
17.04.23
✎
14:52
|
(1) мне надо синхронизировать документ между базами.
Что бы при записи\отменепроведения\удаление документа в Базе1 этот же документ в другой базе делал те же самые действия. |
|||
3
Wefast
17.04.23
✎
14:53
|
Мой вариант перезаписи документа не работает, т.к. при записи во второй базе срабатывает механизм переноса в первую, в общем зацикливается.
В режиме ОбменДанными.Загрузка пишет, что нельзя проводить в данном режиме документ |
|||
4
Волшебник
17.04.23
✎
17:30
|
(3) переносите движения
|
|||
5
PLUT
17.04.23
✎
17:42
|
(3) при загрузке после загрузки объекта добавляйте в "глобальную переменную" в массив сцылку на объект
в обормотчик "после окончания загрузки" добавьте немного магии: в цЫкле по элементам массива "глобальной переменной" проведите эти документы... |
|||
6
OldCondom
17.04.23
✎
18:13
|
1) перенести движения
2) отключить авторегистрацию и втыкать регистрацию как и где надо 3) программно в послезагрузки снимать с регистрации после проведения |
|||
7
Wefast
18.04.23
✎
03:13
|
(4) Базы разные(БП и ЗУП), в БП нет проводок по этому документу.
(5) Посмотрел реализацию на инфорстарте ("Отмена проведения и проведение документов при переносе данных с использованием конвертации данных."), там примерно такое поведение и происходит. Так и сделал В виду постоянно горящих сроков - нет времени на более глубокое понимание почему и зачем там так намудрено - поэтому просто скопировал. (6) Как то муторно, нет нужды использовать регистрацию. Раньше при записи проверял режим обмена, сейчас сделал проверку на текущего пользователя. Это веб сервис со своим пользователем. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |