powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Доступ к динамически созданным item's
22 сообщений из 22, страница 1 из 1
Доступ к динамически созданным item's
    #38308514
loggin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Создал несколько item's у каждого уникальный id.
Создаю процесс After Footer plsql блок, но у меня не получается в процессе обратиться к этим итемам и получить из них значение.
пробовал по всякому : и так V('').
Код: plsql
1.
2.
3.
4.
begin
htp.p(V('test123'));
htp.p(:test123);
end;



Какие мне получить значение этих итемов?
...
Рейтинг: 0 / 0
Доступ к динамически созданным item's
    #38308524
Gustly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
logginСоздал несколько item's у каждого уникальный id.
Создаю процесс After Footer plsql блок, но у меня не получается в процессе обратиться к этим итемам и получить из них значение.
пробовал по всякому : и так V('').
Код: plsql
1.
2.
3.
4.
begin
htp.p(V('test123'));
htp.p(:test123);
end;



Какие мне получить значение этих итемов?
item's это браузер - клиент. PL/SQL блок это база - сервер.
Если хотите связать, надо через JS передавать значения на сервер и они там будут.
...
Рейтинг: 0 / 0
Доступ к динамически созданным item's
    #38308553
loggin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
GustlylogginСоздал несколько item's у каждого уникальный id.
Создаю процесс After Footer plsql блок, но у меня не получается в процессе обратиться к этим итемам и получить из них значение.
пробовал по всякому : и так V('').
Код: plsql
1.
2.
3.
4.
begin
htp.p(V('test123'));
htp.p(:test123);
end;



Какие мне получить значение этих итемов?
item's это браузер - клиент. PL/SQL блок это база - сервер.
Если хотите связать, надо через JS передавать значения на сервер и они там будут.
Странно, а к тем итемам что я создал вручную почему то доступ есть в plsql блоке :test123
Кстати итемы создаю в plsql блоке вот таким образом htp.p(apex_item.text(....));
...
Рейтинг: 0 / 0
Доступ к динамически созданным item's
    #38308630
rockclimber
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чисто теоретически, если итем создан так:
Код: plsql
1.
apex_item.text(p_idx => 50, p_value => 'qwerty', p_item_id => 'PTEXT')

То получать его значение в PL/SQL коде надо так:
Код: plsql
1.
2.
3.
begin
myvar:= :PTEXT;
end;

Пробовать пока лень.
...
Рейтинг: 0 / 0
Доступ к динамически созданным item's
    #38308965
loggin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rockclimberЧисто теоретически, если итем создан так:
Код: plsql
1.
apex_item.text(p_idx => 50, p_value => 'qwerty', p_item_id => 'PTEXT')

То получать его значение в PL/SQL коде надо так:
Код: plsql
1.
2.
3.
begin
myvar:= :PTEXT;
end;

Пробовать пока лень.
Да, именно так я и делаю... но не работает.
...
Рейтинг: 0 / 0
Доступ к динамически созданным item's
    #38308994
loggin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
logginrockclimberЧисто теоретически, если итем создан так:
Код: plsql
1.
apex_item.text(p_idx => 50, p_value => 'qwerty', p_item_id => 'PTEXT')

То получать его значение в PL/SQL коде надо так:
Код: plsql
1.
2.
3.
begin
myvar:= :PTEXT;
end;

Пробовать пока лень.
Да, именно так я и делаю... но не работает.

Если создать процесс и повесить его на сабмит, то доступ к этим итемам возможен только так
Код: plsql
1.
2.
3.
FOR i IN 1 .. apex_application.g_f50.count LOOP
raise_application_error( -20001, apex_application.g_f50(i));
end loop;



через вот эти вещи V('') :P_var_item не получается.
...
Рейтинг: 0 / 0
Доступ к динамически созданным item's
    #38309047
Gustly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
V() - фукнция для PL/SQL
:VAR для SQL
&VAR. для HTML
http://docs.oracle.com/cd/E37097_01/doc/doc.42/e35125/concept_ses_val.htm#BEICHBBG
...
Рейтинг: 0 / 0
Доступ к динамически созданным item's
    #38309304
Фотография suPPLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rockclimberЧисто теоретически, если итем создан так:
Код: plsql
1.
apex_item.text(p_idx => 50, p_value => 'qwerty', p_item_id => 'PTEXT')


То получать его значение в PL/SQL коде надо так

Нет. Созданные с помощью APEX_ITEM поля при сабмите записываются в коллекции APEX_APPLICATION.g_fNN. Поля при сабмите на сервер используют атрибут name , а не id.
...
Рейтинг: 0 / 0
Доступ к динамически созданным item's
    #38326500
loggin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
suPPLerrockclimberЧисто теоретически, если итем создан так:
Код: plsql
1.
apex_item.text(p_idx => 50, p_value => 'qwerty', p_item_id => 'PTEXT')


То получать его значение в PL/SQL коде надо так

Нет. Созданные с помощью APEX_ITEM поля при сабмите записываются в коллекции APEX_APPLICATION.g_fNN. Поля при сабмите на сервер используют атрибут name , а не id.

А если не происходит сабмит куда записывается информация о них?
Выполняю $.get(...) запрос на сервер который вызывает ondemand процесс на той же странице, где созданы динамические поля то как мне из Pl\sql процесса обратиться к этим переменным?
Код: plsql
1.
2.
3.
:myItem -- >> не работает
v('myItem') -- >> не работает
apex_application.g_f01.count -- >> возвращает 0
...
Рейтинг: 0 / 0
Доступ к динамически созданным item's
    #38329036
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
loggin,

Суть в том что поля names элементов форм передаются в качестве параметров соответствующих функций всяких f, wwv_flow.*, ...

Если посмотреть заголовки названия айтемсов передаются в кодовом виде в параметрах типа p_arg_names, p_arg_values, а названия в прямом виде в p_txx и уже на стороне сервера коды items-ов сопоставляются обратно с названиями.

Ну а нам разработчики предоставили параметры fxx, которые и передаются в соответствующие функции, их можно прочитать как описано в документации.

http://docs.oracle.com/cd/E37097_01/doc/doc.42/e35127/apex_app.htm#CHDICJDA

Ну а касательно, сможете вы это сделать или нет... Все зависит не от того $.get вы используете или что-то другое, а от того какая функция выступает в качестве обработчика.

Так уж заведено, что для page processing в качестве процедуры-обработчика выступает wwv_flow.accept , туда и можете передать эти параметры, если используется она

а в качестве page rendering - процедуры f, wwv_flow.show
(пример, wwv_flow.show?p_instance=session_id&p_flow_id=app_id&p_flow_step_id=page_id)

как передаются параметры в f мы знаем, wwv_flow.show имеет ограниченный набор параметров по сравнению с wwv_flow.accept.

Кроме fxx кое-где можно увидеть использование кое-каких других параметров. Ну и естественно нужно соблюдать осторожность в использовании этих функций, т.к. это слабо документировано. А дальше дело техники.
...
Рейтинг: 0 / 0
Доступ к динамически созданным item's
    #38329105
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SvDevа названия значения в прямом виде в p_txx и уже на стороне сервера коды items-ов сопоставляются обратно с названиями.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Доступ к динамически созданным item's
    #38881040
WilliamBlake
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть кнопка(Defined by Dynamic Action) по которой вызывается процедура pl/sql , принимающая 2 параметра(number и date), которые нужно считать из форм рядом с этой кнопкой.
При попытке прописать в качестве праметров :name_item , выдает ругань: 'AJAX call returned server error ORA-06512: at line for execute PL/SQL code'.
Мне кажется это распространенный тривиальный пример, который может понадобиться в реальных проектах, как в апексе предусмотрено реализовывать такую передачу параметров, кто-нибудь в курсе?
...
Рейтинг: 0 / 0
Доступ к динамически созданным item's
    #38881045
WilliamBlake
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пс: items-ы созданы не динамически, а через интерфейс application builder
...
Рейтинг: 0 / 0
Доступ к динамически созданным item's
    #38881068
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WilliamBlake,
- проверьте правильность кода вне apex аккуратно подставив значение вместо переменных.
- потом весь ваш код сюда
...
Рейтинг: 0 / 0
Доступ к динамически созданным item's
    #38881085
Фотография suPPLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WilliamBlakeЕсть кнопка(Defined by Dynamic Action) по которой вызывается процедура pl/sql , принимающая 2 параметра(number и date), которые нужно считать из форм рядом с этой кнопкой.
При попытке прописать в качестве праметров :name_item , выдает ругань: 'AJAX call returned server error ORA-06512: at line for execute PL/SQL code'.
Без кода разговор беспредметен.
...
Рейтинг: 0 / 0
Доступ к динамически созданным item's
    #38881487
WilliamBlake
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сейчас по-другому себя ведет, ошибку не выдает, но вместо передаваемых значений, которые вводятся в поля формы, в таблицу пишутся null-ы.
Код в Action:
Код: plsql
1.
2.
3.
begin
proc_zzz(:P1_X,:P2_X);
end;



Код самой процедуры:
Код: plsql
1.
2.
3.
4.
5.
CREATE OR REPLACE procedure TEST.proc_zzz(q number,w date) is
begin
insert into zzz (id,name) values (q,w);
commit;
end;



При изменении кода Action на:
Код: plsql
1.
2.
3.
begin
proc_zzz(111,trunc(sysdate));
end;



Все работает.
...
Рейтинг: 0 / 0
Доступ к динамически созданным item's
    #38881492
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WilliamBlakeв таблицу пишутся null-ы.
17273351 п.п. 1
...
Рейтинг: 0 / 0
Доступ к динамически созданным item's
    #38881513
WilliamBlake
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код вне апекса работает корректно, про выполнении анонимного блока все инсертится корректно:
Код: plsql
1.
2.
3.
begin
proc_zzz(22,sysdate);
end;


Скрины элементов.
...
Рейтинг: 0 / 0
Доступ к динамически созданным item's
    #38881525
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WilliamBlake,
скрины неудобные, мелкие
- пропиши items P1_X,:P2_X как входные там в поля
...
Рейтинг: 0 / 0
Доступ к динамически созданным item's
    #38881571
WilliamBlake
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123WilliamBlake,
скрины неудобные, мелкие
- пропиши items P1_X,:P2_X как входные там в поля
Если вы про тип параметров в процедуре то прописал тип in , результат тот же.
Код: plsql
1.
2.
3.
4.
5.
CREATE OR REPLACE procedure TEST.proc_zzz(q in number,w in date) is
begin
insert into zzz (id,name) values (q,w);
commit;
end;


В моем предыдущем сообщении ссылка на скрины, наведя курсор можно их увеличить до нормального размера.
...
Рейтинг: 0 / 0
Доступ к динамически созданным item's
    #38881597
WilliamBlake
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123 , где в интерфейсе апекса прописывается тип айтема(входной или выходной)?
...
Рейтинг: 0 / 0
Доступ к динамически созданным item's
    #38881606
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WilliamBlakeе
там где код -
Page Items to Submit
...
Рейтинг: 0 / 0
22 сообщений из 22, страница 1 из 1
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Доступ к динамически созданным item's
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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