Size: a a a

1С, БСП, DevOps и Архитектура

2020 March 12

JD

John Doe in 1С, БСП, DevOps и Архитектура
Kamik
Подскажите, как можно реализовать возможность присоединять файлы к строке ТЧ через БСП РаботаСФайлами? Кто в этом случае будет ВладелецФайла?
Заводишь к строке ТЧ ссылочный реквизит (справочник), к нему уже присоединяешь
источник

JD

John Doe in 1С, БСП, DevOps и Архитектура
Ссылку на элемент справочника (владельца присоединенного файла) хранишь в строках ТЧ.
Плюсом получаешь УИД строки ТЧ.
источник

K

Kamik in 1С, БСП, DevOps и Архитектура
John Doe
Ссылку на элемент справочника (владельца присоединенного файла) хранишь в строках ТЧ.
Плюсом получаешь УИД строки ТЧ.
+ спасибо
источник

AO

Andrey Ovsiankin in 1С, БСП, DevOps и Архитектура
Распределенные транзакции не работают. Лучше сразу откажитесь от идеи. В любом случае это будет двухстороннее подтверждение - сделай то-то, ответ - я сделал - фиксация
источник

AO

Andrey Ovsiankin in 1С, БСП, DevOps и Архитектура
Ну и какой-то брокер, который откатывает не свершившиеся транзакции. Короче, лучше eventual consistency и... вообще, какую задачу вы решаете?
источник

AO

Andrey Ovsiankin in 1С, БСП, DevOps и Архитектура
Задачка. Дано: из системы А выполнить действие в системе Б с возможностью отката в случае ошибки. Задание: напишите в скольких местах и что может пойти не так.
источник

AS

Anton Selin in 1С, БСП, DevOps и Архитектура
eventual consistency - посмотрю, что это..
источник

AS

Anton Selin in 1С, БСП, DevOps и Архитектура
Andrey Ovsiankin
Задачка. Дано: из системы А выполнить действие в системе Б с возможностью отката в случае ошибки. Задание: напишите в скольких местах и что может пойти не так.
Система А запрашивает у системы Б новые данные.
Новые данные есть - система Б возвращает список. У себя ничего не меняет.
Система А последовательно обрабатывает эти данные. Перед началом обработки каждой порции данных, система А уведомляет об этом систему Б. Система Б на своей стороне помечает специальным признаком эти данные. Цель пометки - при следующем запросе из системы А в систему Б не возвращать эти данные.

После уведомления в систему Б и до завершения работ, в системе А пойдет что-то не так...
источник

JD

John Doe in 1С, БСП, DevOps и Архитектура
Anton Selin
Система А запрашивает у системы Б новые данные.
Новые данные есть - система Б возвращает список. У себя ничего не меняет.
Система А последовательно обрабатывает эти данные. Перед началом обработки каждой порции данных, система А уведомляет об этом систему Б. Система Б на своей стороне помечает специальным признаком эти данные. Цель пометки - при следующем запросе из системы А в систему Б не возвращать эти данные.

После уведомления в систему Б и до завершения работ, в системе А пойдет что-то не так...
Помечать не до начала обработки, а после успешного ее завершения не предлагать?
источник

NG

Nikita Gryzlov in 1С, БСП, DevOps и Архитектура
Anton Selin
Система А запрашивает у системы Б новые данные.
Новые данные есть - система Б возвращает список. У себя ничего не меняет.
Система А последовательно обрабатывает эти данные. Перед началом обработки каждой порции данных, система А уведомляет об этом систему Б. Система Б на своей стороне помечает специальным признаком эти данные. Цель пометки - при следующем запросе из системы А в систему Б не возвращать эти данные.

После уведомления в систему Б и до завершения работ, в системе А пойдет что-то не так...
Сменить схему с пулл на пуш не предлагать? Системе источнику в целом должно быть пофиг, приняты ли приёмником данные, это не её забота
источник

JD

John Doe in 1С, БСП, DevOps и Архитектура
Anton Selin
Система А запрашивает у системы Б новые данные.
Новые данные есть - система Б возвращает список. У себя ничего не меняет.
Система А последовательно обрабатывает эти данные. Перед началом обработки каждой порции данных, система А уведомляет об этом систему Б. Система Б на своей стороне помечает специальным признаком эти данные. Цель пометки - при следующем запросе из системы А в систему Б не возвращать эти данные.

После уведомления в систему Б и до завершения работ, в системе А пойдет что-то не так...
У тебя сама суть пометки неправильно обозначена: "Цель пометки - при следующем запросе из системы А в систему Б не возвращать эти данные".
Не возвращать можно только если они успешно обработаны, а не просто начались обрабатываться же.
источник

AS

Anton Selin in 1С, БСП, DevOps и Архитектура
Nikita Gryzlov
Сменить схему с пулл на пуш не предлагать? Системе источнику в целом должно быть пофиг, приняты ли приёмником данные, это не её забота
Не пофиг. До тех пор, пока система А не приняла данные из системы Б, то система Б может эти данные менять у себя сколько хочет. Но как только система А получила из системы Б (уведомила её об этом) порцию данных, то внесение изменений системой Б в эти данные невозможны.
источник

OT

Oleg Tymko in 1С, БСП, DevOps и Архитектура
Anton Selin
Не пофиг. До тех пор, пока система А не приняла данные из системы Б, то система Б может эти данные менять у себя сколько хочет. Но как только система А получила из системы Б (уведомила её об этом) порцию данных, то внесение изменений системой Б в эти данные невозможны.
Мм. А пока принимает данные, они станут уже не актуальными
источник

JD

John Doe in 1С, БСП, DevOps и Архитектура
Oleg Tymko
Мм. А пока принимает данные, они станут уже не актуальными
Не станут - он же блокирует их от изменения до начала высасывания
источник

JD

John Doe in 1С, БСП, DevOps и Архитектура
Но тогда в чем вопрос - непонятно
источник

OT

Oleg Tymko in 1С, БСП, DevOps и Архитектура
John Doe
Не станут - он же блокирует их от изменения до начала высасывания
Написано же выше - данные могут менять пока не приняты
источник

AS

Anton Selin in 1С, БСП, DevOps и Архитектура
Oleg Tymko
Мм. А пока принимает данные, они станут уже не актуальными
Не все рассказал подробно, каюсь.
В первой итерации я лишь получаю из системы Б список номеров документов..
Второй итерацией система А по каждому документу отправляет в систему Б уведомление, что "начинаю работать с документом №4444", потом есть очередной запрос в систему Б - получить данные по документу.
источник

AS

Anton Selin in 1С, БСП, DevOps и Архитектура
не спрашиваете что за архитектура и почему такая. Что есть, с тем приходится работать....
источник

AS

Anton Selin in 1С, БСП, DevOps и Архитектура
Система Б не в наших владениях -)
источник

JD

John Doe in 1С, БСП, DevOps и Архитектура
Oleg Tymko
Написано же выше - данные могут менять пока не приняты
"Перед началом обработки каждой порции данных, система А уведомляет об этом систему Б. Система Б на своей стороне помечает специальным признаком эти данные"
источник