powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / переменные сессии и динамические формы
11 сообщений из 11, страница 1 из 1
переменные сессии и динамические формы
    #37133614
Фотография J.d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
доброго времени суток )

вопрос из двух частей тем не менее у меня всё это часть целого. первое - есть ли возможность через api pl/sql да, например, создавать так называемые сессионные переменные, и хранить там значения внутри сессии для пользователя, при этом не создавая <input> или другой контрол ввода данных. что-то вроде apex_util.set_attribute. - хопс, создал переменную, присвоил значение. и не надо "таскать" её со страницы на страницу по скрытым полям.

вот а второе - пример. есть платежи. по каждому типу платежей - свой набор реквизитов. соответственно когда выбирают в выпадающем списке тип платежа/операции - я через plsql блок динамически достраиваю форму - генерю html код с контролами. - (какие должны быть для кажого типа платежа реквизиты - у меня хранится в справочнике). в итоге - как только в форму добавляется мой свежесгенеренный контрол, при отправке данных формы, вылетает 404. В СТРОКЕ - wwv_flow.accept без параметров. я глядел в html код страницы - там черт ногу сломит.

Есть выход создать невидимое поле, и перед отправкой поля яваскриптом склеитвать значения динамических полей и бахать в невидимку, и отправлять, но это гемор, может кто сталкивался, подскажите.
...
Рейтинг: 0 / 0
переменные сессии и динамические формы
    #37133699
Фотография J.d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
учитывая что есть вот эти все функции, разрабы предусматривали мой случай -

APEX_ITEM.HIDDEN(1,empno)
APEX_ITEM.TEXT(2,ename)
APEX_ITEM.TEXT(3,job)
APEX_ITEM.DATE_POPUP(4,rownum,hiredate,'dd-mon-yyyy')
APEX_ITEM.TEXT(5,sal)
APEX_ITEM.TEXT(6,comm)
...
Рейтинг: 0 / 0
переменные сессии и динамические формы
    #37133705
Фотография J.d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
всмысле они генерят html код для input-ов
...
Рейтинг: 0 / 0
переменные сессии и динамические формы
    #37133754
haXbat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
J.d,

APEX_COLLECTION подойдет?

Collections enable you to temporarily capture one or more nonscalar values. You can use collections to store rows and columns currently in session state so they can be accessed, manipulated, or processed during a user's specific session. You can think of a collection as a bucket in which you temporarily store and name rows of information.
...
Рейтинг: 0 / 0
переменные сессии и динамические формы
    #37133772
Фотография suPPLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
J.dпервое - есть ли возможность через api pl/sql да, например, создавать так называемые сессионные переменные, и хранить там значения внутри сессии для пользователя, при этом не создавая <input> или другой контрол ввода данных. что-то вроде apex_util.set_attribute. - хопс, создал переменную, присвоил значение. и не надо "таскать" её со страницы на страницу по скрытым полям.

0. APEX_UTIL.SET_PREFERENCE / APEX_UTIL.GET_PREFERENCE / APEX_UTIL.REMOVE_PREFERENCE.
1. Переменные уровня приложения (Application Items).
2. Глобальный пользовательский контекст.

J.dвот а второе - пример. есть платежи. по каждому типу платежей - свой набор реквизитов. соответственно когда выбирают в выпадающем списке тип платежа/операции - я через plsql блок динамически достраиваю форму - генерю html код с контролами. - (какие должны быть для кажого типа платежа реквизиты - у меня хранится в справочнике). в итоге - как только в форму добавляется мой свежесгенеренный контрол, при отправке данных формы, вылетает 404. В СТРОКЕ - wwv_flow.accept без параметров. я глядел в html код страницы - там черт ногу сломит.

0. Создать по элементу для каждого возможного атрибута и проставить у них необходимые условия для отображения.
1. Использовать APEX_ITEM, в процессах работать со значениями из коллекций APEX_APPLICATION.g_fXX. Этот пакет можно использовать в регионе типа PL/SQL Dynamic Content. Либо в отчёте, обращаясь к соответствующим функциям в запросе в зависимости от типа атрибута. Единственная проблема - специфичная обработка флажков (checkbox), в коллекцию заносятся только значения отмеченных.
...
Рейтинг: 0 / 0
переменные сессии и динамические формы
    #37133798
Фотография J.d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
suPPLer,

APEX_UTIL.SET_PREFERENCE - пробовал, не получалось, но раз вы говорите что это оно, значит я что-то не так делал,
отлично, спасибо!

по второму вопросу:

автор0. Создать по элементу для каждого возможного атрибута и проставить у них необходимые условия для отображения.


это проблематично, такой подход был выбран мной исходя из таких рассуждений, что кол-во типов платежей и операций будет расти, соответственно для каждого типа будет свой набор полей/реквизитов, - постоянно "дописывать" приложение - не улыбалось, поэтому захотелось перенести этот процесс на плечи т.н. "админа" приложения и спец интерфейса - где к типам можно привязывать поля и настраивать их, а не разработчика, который смог бы дописывать код формы.

автор1. Использовать APEX_ITEM, в процессах работать со значениями из коллекций APEX_APPLICATION.g_fXX. Этот пакет можно использовать в регионе типа PL/SQL Dynamic Content. Либо в отчёте, обращаясь к соответствующим функциям в запросе в зависимости от типа атрибута.
с этим проблем нет.

авторЕдинственная проблема - специфичная обработка флажков (checkbox), в коллекцию заносятся только значения отмеченных.
до этого еще не доходило но я предчувствовал, что будут вопросы, спасибо что подсказали заранее где может быть загвоздка)
...
Рейтинг: 0 / 0
переменные сессии и динамические формы
    #37133850
Фотография suPPLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
J.dэто проблематично, такой подход был выбран мной исходя из таких рассуждений, что кол-во типов платежей и операций будет расти, соответственно для каждого типа будет свой набор полей/реквизитов

Ну, не сотни же типов будут. Можно выделить общие атрибуты, создать для их ввода отдельную страницу. А в зависимости от выбранного типа переходить на одну из страниц с атрибутами, специфичными для набора типов, и выводить их по условиям.
...
Рейтинг: 0 / 0
переменные сессии и динамические формы
    #37133873
Фотография J.d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
suPPLer,

может и сотни. уже сотни думаю. и еще на подходе. типа единая система платежей и переводов.

ясно, понятно. .. а почему 404 выскакивает у вас нет предпложений?
...
Рейтинг: 0 / 0
переменные сессии и динамические формы
    #37133902
Фотография suPPLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
J.dясно, понятно. .. а почему 404 выскакивает у вас нет предпложений?

Потому APEX может обрабатывать только элементы формы, созданные декларативно, через Application Builder, либо через API (APEX_ITEM). В случае с APEX_ITEM можно даже не обращаться к пакету, а самостоятельно дописывать элементы ввода, соблюдая ту же HTML-структуру (атрибуты name, id, value и т.д.), например, новые строки к табличной форме/изменяемому отчёту.
...
Рейтинг: 0 / 0
переменные сессии и динамические формы
    #37133917
Фотография suPPLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
J.dsuPPLer,

может и сотни. уже сотни думаю. и еще на подходе. типа единая система платежей и переводов.

Всё равно слишком много типов. Большинство платежей имеют общую структуру: получатель, услуга, номер для идентификации плательщика (номер счёта/заказа/код в БД получателя), сумма, комиссия. То же и с переводами. Думаю, можно сильно уменьшить количество действительно уникальных типов. :)
...
Рейтинг: 0 / 0
переменные сессии и динамические формы
    #37133921
Фотография J.d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
suPPLer,

вы кстати в чем-то правы. попробую узнать полный список всевозможных реквизитов, придется че-то перелопатить за то работать будет) благодарствую =)
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / переменные сессии и динамические формы
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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