откат кода процесса вершины с другой страницы

У меня есть две страницы вроде 10 и 11 со страницы 11, у меня есть процесс на кнопке, которая обновляет таблицы обратно в базе данных и после обработки пользователя обратно на страницу 10, поэтому в любом случае я хочу отменить изменения, сделанные на странице 11 процесса или возможно, придется сохранить на странице 10, используя кнопку, чтобы сделать изменения постоянными на странице 10.

Я попытался запустить ROLBACK на странице 11, но он не работает, поскольку Apex сделал неявную фиксацию на странице 11, поэтому я не могу ничего получить от отката.

Я действительно хочу сделать изменения постоянными только со страницы 11, а не со страницы 10. Пожалуйста, предложите способ, как я могу этого добиться,


person Adeel    schedule 24.06.2019    source источник


Ответы (1)


Один из вариантов может заключаться в использовании (глобальных) временных таблиц (GTT), описание которых будет таким же, как и те, которые вы в настоящее время используете в процессе.

Таким образом вы зафиксируете изменения в GTT (убедитесь, что они созданы с использованием параметра on commit preserve rows). Затем, когда вы будете перенаправлены на страницу 10, либо

  • распространять изменения в «настоящие» таблицы (если вы решите сохранить эти изменения)
  • очистить GTT и ничего не делать с «настоящими» таблицами (если вы решите отменить изменения)
person Littlefoot    schedule 24.06.2019
comment
У меня есть огромный код с более чем 6 таблицами, которые заполняются в последовательности, поскольку первая таблица - это мачта, вторая - деталь первой, а третья - деталь второй, а четвертая - деталь третьей и так далее с множеством условий, поэтому его очень сложно После копирования данных из реальных таблиц в GTT для редактирования, а затем обратно в реальные таблицы для сохранения изменений, поэтому я ожидаю, что что-то зафиксирует и откатится просто - person Adeel; 24.06.2019
comment
Есть новости по вышеуказанной проблеме? - person Adeel; 25.06.2019
comment
К сожалению нет. - person Littlefoot; 26.06.2019