Обновление табличной формы Apex с помощью PLSQL

Как я могу обновить Apex Tabular Form с помощью pl/sql вместо использования многострочного обновления (MRU), это вообще возможно?

Заранее спасибо.

1 ответ

Решение

Да, это возможно. Вы можете удалить (или отключить) стандартные процессы, такие как ApplyMRU, и заменить их собственными процессами PL/SQL, чтобы обрабатывать массивы табличных форм примерно так:

for i in 1..apex_application.g_f02.count loop
   update dept
   set    dname = apex_application.g_f03(i)
   where  deptno = apex_application.g_f02(i);
end loop;

Тем не менее, это не просто, и есть некоторые моменты, которые вам нужно знать, чтобы понять это, например:

  • Как столбцы табличной формы отображаются на массивы, такие как apex_application.g_f03 (просмотрите исходный код страницы и найдите имена элементов управления, например, "f03_0001").
  • Как некоторые типы элементов, такие как флажки, работают иначе, чем другие
  • Как выполнить оптимистическую блокировку, чтобы предотвратить потерянные обновления

Раньше на apex.oracle.com был документ "как это сделать", в котором это подробно описано, но я не смог найти его в последнее время.

Другие вопросы по тегам