Как проставить номер сообщения в план обмена? #795413


#0 by Полотенчик
Если в плане обмена выбираешь измененные объекты методом ВыбратьИзменения, то у него вторым параметром как раз указывается номер сообщения, который будет проставлен у выбранных данных. Но я хочу получить измененные данные с помощью запроса к таблице изменений, т.к. помимо самих данных в запросе надо получить еще дополнительные сведения. Как в таком случае проставить у измененных данных номер сообщения чтобы потом, после подтверждения загрузки данных, я мог убрать из плана обмена данный с этим номером сообщения?
#1 by Полотенчик
Ап. Неужели никто с обменами не работал?
#2 by Фрэнки
в самой таблице изменений не должно быть номера сообщения обмена. Там есть просто изменения, которые сами себя перезатирают, когда изменения происходят вновь
#3 by Фрэнки
узел обмена есть. А номера сообщения не должно быть
#4 by Полотенчик
Как это не должны быть? А как тогда понять что уже было отправлено чтобы после подтверждения удалить? Вот таблица изменений до отправления, номер сообщения: Вот выбрал изменения с помощью метода ВыбратьИзменения, присвоил номер сообщения 1 (для примера. мне надо проставлять номер сообщения без метода ВыбратьИзменения): Далее когда удаленный сервер пришлет подтверждение, что сообщение номер 1 успешно загружено, я удалю все изменения с номером 1, и они передаваться не будут.
#5 by Полотенчик
Зачем вообще тогда запросы к таблицам изменений, если проставлять номера сообщений можно только выборкой методом ВыбратьИзменения?
#6 by Полотенчик
вторая ссылка:
#7 by МимохожийОднако
зачем тебе этот несчастный номер?
#8 by Полотенчик
затем, чтобы сначала пометить то, что было отправлено в другое место, а затем, при получении подтверждения успешной загрузки, то, что отправлено убрать из списка изменений именно таким же образом работают планы обмена..
#9 by Beuenj
>> Но я хочу получить измененные данные с помощью запроса к таблице изменений, т.к. помимо самих данных в запросе надо получить еще дополнительные сведения Извини глупый вопрос, но непонятно, что тебе надо. Нужны дополнительные данные? Ну получи их отдельным запросом?
#10 by Полотенчик
Пример: есть контрагент, есть его адреса, контакты, хранящиеся в регистрах. В 1С добавляют нового контрагента или меняют адрес или еще что-то - надо передать этим данные в другое место (левая база, не 1С; формирую xml в нужном формате, и его отдаю через веб-сервис). Для этого регистрирую в плане обмена изменение контрагента, затем когда сторонняя база делает запрос на веб-сервис "ДайНовыхКонтрагентов" я в 1С делаю запрос: В результате у меня есть и измененные элементы, и все доп. данные, которые необходимы. Осталось перебрать результат запроса, сформировать xml и сказать плану обмена: установи у такого-то узла у элемента Выборка.Ссылка номер сообщения "1". Но такого, видимо, нет... Надо отдельно делать выборку изменений: Но здесь же в цикле я не буду получать доп. данные, т.к. запросы в цикле - бред.. Получается единственный вариант - выгрузить результат предыдущего запроса в таблицу значений, а в этом цикле искать строку с измененными данными в этой таблице, и уже тогда формировать xml, которую передавать на сторонний сервер. Но зачем делать две выборки изменений когда в запросе уже все получено? Понятно?
#11 by Полотенчик
Зачем вообще нужен запрос к таблице изменений, если потом это никак нельзя состыковать с регистрацией изменений и отправкой сообщений в удаленную базу?
#12 by Фрэнки
возьми старую версию какого-нибудь Бит-Финанс (для примера) и увидишь там весь этот ужас, который тебе сейчас покоя не дает. Если сравнишь это с текущей версией, то там это видно через регистры сведений с префиксом Удалить... А подробно обсуждать лень. Но я бы с такой трактовкой обмена не заморачивался.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

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