powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / UI типа "Wizard" с несколькими Tabular Form и транзакционность.
5 сообщений из 5, страница 1 из 1
UI типа "Wizard" с несколькими Tabular Form и транзакционность.
    #39511742
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет!
Есть визард, который позволяет создать карточку клиента.
1. Заполняем простые анкетные данные (Form)
2. Заполняем список документов (Tabular Form)
3. Заполняем список объектов (Tabular Form)

4.1. Жмём "SAVE" - всё вместе сохраняется.
4.2. Жмем "CANCEL" - всё вместе отменяется.

Обычно последняя страница визарда у меня совершает все операции DML, включая MRU от Tabular Form.
Но в данном случае требуется пробежаться по строкам 2-х таблиц.
Что подскажете?
Заранее благодарен.
...
Рейтинг: 0 / 0
UI типа "Wizard" с несколькими Tabular Form и транзакционность.
    #39511807
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может быть на странице 2 создать кастомную коллекцию, заполнить ее из Tabular Form, а на финальной странице записать данные из нее в БД?..
Кто-нить реализовывал такую фитчу?
...
Рейтинг: 0 / 0
UI типа "Wizard" с несколькими Tabular Form и транзакционность.
    #39512046
heavyside
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Курдль,

Не очень понимаю что значит "кастомная коллекция", но я бы заюзал apex_collections если возможно. Соответственно если таблицы две, то две коллекции с различными именами. Если apex_collections по типу/количеству столбцов не проходит (мне например иногда не хватает числовых полей), то можно создать таблички в базе с нужными полями и полем юзер (если юзер может одновременно только одну сессию иметь). и чистить их по юзеру. Оба варианта использовал для визардов, всё хорошо работало.
...
Рейтинг: 0 / 0
UI типа "Wizard" с несколькими Tabular Form и транзакционность.
    #39512050
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
heavyside,

Да, под кастомной я имел в виду именованную apex_collection в отличие от типовой коллекции apex_application, в которую по умолчанию попадают результаты Tabular Form.
...
Рейтинг: 0 / 0
UI типа "Wizard" с несколькими Tabular Form и транзакционность.
    #39512801
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поделюсь своим опытом.
Решение оказалось вполне удовлетворительным.
Причем удалось избежать проблемы исчезновения данных из Tabular Form после перехода туда/обратно по кнопкам визарда NEXT/PREVIOUS.
Для этого достаточно построить Tabular Form регион на запросе к той же коллекции, где сохраняются его записи.
Код: plsql
1.
SELECT n001, n002, n003, c001, c002, c003, c004 FROM APEX_COLLECTIONS WHERE COLLECTION_NAME = 'EMPLOYEE'



Для сохранения данных при уходе со страницы создаётся процесс After Submit:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
BEGIN
   APEX_COLLECTION.CREATE_OR_TRUNCATE_COLLECTION (p_collection_name => 'EMPLOYEE');
      
   FOR i IN 1 .. APEX_APPLICATION.G_F02.COUNT
   LOOP
      APEX_COLLECTION.ADD_MEMBER (p_collection_name   => 'EMPLOYEE',
                                  p_n001              => APEX_APPLICATION.G_F02 (i),
                                  p_n002              => APEX_APPLICATION.G_F03 (i),
                                  p_n003              => APEX_APPLICATION.G_F04 (i),
                                  p_c001              => APEX_APPLICATION.G_F05 (i),
                                  p_c002              => APEX_APPLICATION.G_F06 (i),
                                  p_c003              => APEX_APPLICATION.G_F07 (i),
                                  p_c004              => APEX_APPLICATION.G_F08 (i));                               
   END LOOP;
END;
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / UI типа "Wizard" с несколькими Tabular Form и транзакционность.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]