AWA написал(а):
вызывается функциональный модуль по рфц из системы 1 в системе 2,
в нем вызываются несколько функциональных модулей,
причем порядок такой
1 читает данные по рфц из 1 системы
2 на основании полученных данных делает изменнения в системе 2
3 на основании изменений фм2 делает новые изменения в системе 2
4 читает данные по рфц из 1 системы
вопрос такой как откатить изменния фм 2,3 в случаи ошибки, вариант in background task не подходит так фм должны содержать импорт параметры.
Спасибо.
Возможно у меня пятница, но в Вашем посте по-моему какие то нестыковки.
1. Вызываете в SYS1 модуль - call FM_SYS2 destination SYS2.
2. Потом читаете в SYS2(FM_SYS2) данные из SYS1. Почему сразу не передаете эти данные на 1-ом шаге? Зачем их читать по РФЦ, и каким образом Вы это делаете?
3. Далее делаете что то в SYS2(FM_SYS2). Тут нужно смотреть по Вашей конкретной ситуации, что в этим модулях и что они делают ("
на основании изменений фм2 делает новые изменения в системе 2" вот из-за этого, Вы ведь понимаете, что если данные которые требуются для п3 должны сначала закомитится, то никакого отката не получится...). Для начала предложу обернуть эти два модуля (Ваши пункты 1 и 2) в ФМ-ы обновления(in update task) и поставить их в очередь, при ошибке будет откат.
4. Опять таки, зачем считывать данные из SYS1? Из Вашего поста не ясно.
вопрос такой как откатить изменния фм 2,3 в случаи ошибки, вариант in background task не подходит так фм должны содержать импорт параметры.Если можно вот это подробнее объясните.