powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Как передать значение переменной JS в SQL REPORT?
7 сообщений из 7, страница 1 из 1
Как передать значение переменной JS в SQL REPORT?
    #37036889
itpb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ситуация такая: есть SQL репорт, где условие where like строка поиска. Без перезагрузки страницы меняется многократно строка поиска и просиходит автообновление репорта по событию onchache.
Строка поиска -итем, но получить текущее актуальное значение могу только через JS.
Не хотелось бы сабмитить страницу. Как передать эту переменную в в where скл-репорт?
...
Рейтинг: 0 / 0
Как передать значение переменной JS в SQL REPORT?
    #37036895
itpb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
могу я юзать (с точки зрения правильности) глобальные переменные , а в SQL репорте wwv_flow.g_x02? Или это не гламурно?
...
Рейтинг: 0 / 0
Как передать значение переменной JS в SQL REPORT?
    #37036999
itpb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пока на ум приходит такой вариант - записывать через ajax значение итема строки поиска в БД, в SQL репорте юзать значение из БД. Рефреш SQL репорта делать через JS.

То есть onchage: 1. записали значение в БД. 2. рефреш SQL REPORT
...
Рейтинг: 0 / 0
Как передать значение переменной JS в SQL REPORT?
    #37038160
itpb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Парни, простенький вопрос, наверняка кто уже писал на pl/sql, ну чтоб самому не выдумывать.

Есть строка (str) ",333344,область,Название (с) р-он,г.Такой, ул.Майская,д15,,2

Надо с нее получить a:=Название b:=Такой, c:=Майская


Или еще пример ",333344,область,,Такой-на-Дону г., Майский пер.,д15,,2

Надо с нее получить a:='' b:=Такой-на-Дону, c:=Майский


Это надо, чтобы выделить автоматом три ключевых слова поиска (который формируют строку поиска str like '%'||a||'%'||b||'%'||c||'%', юзер потом их может корректировать
...
Рейтинг: 0 / 0
Как передать значение переменной JS в SQL REPORT?
    #37041375
Фотография suPPLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
itpbПока на ум приходит такой вариант - записывать через ajax значение итема строки поиска в БД, в SQL репорте юзать значение из БД. Рефреш SQL репорта делать через JS.

То есть onchage: 1. записали значение в БД. 2. рефреш SQL REPORT

До 4-ой версии - именно так. Начиная с 4-ой, можно через Dynamic Action всё сделать.
...
Рейтинг: 0 / 0
Как передать значение переменной JS в SQL REPORT?
    #37041389
Фотография suPPLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
itpbПарни, простенький вопрос, наверняка кто уже писал на pl/sql, ну чтоб самому не выдумывать.

Вообще-то, это вопрос основного форума Oracle. Попробуйте через regexp_replace убрать всё лишнее (г., обл., р-он и т.д.), а потом бейте на лексемы. Простыми способами задача КЛАДР быстро и дёшево не решается. :)
...
Рейтинг: 0 / 0
Как передать значение переменной JS в SQL REPORT?
    #37041417
itpb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
suPPLeritpbПарни, простенький вопрос, наверняка кто уже писал на pl/sql, ну чтоб самому не выдумывать.

Вообще-то, это вопрос основного форума Oracle. Попробуйте через regexp_replace убрать всё лишнее (г., обл., р-он и т.д.), а потом бейте на лексемы. Простыми способами задача КЛАДР быстро и дёшево не решается. :)

ну вообщем тогда еще сделал, выложу тут, может кому пригодится:

Пакет ZZZ
function STR_ARR (param1 IN varchar2)
return zzz_arr;

body

function STR_ARR (param1 IN varchar2) return zzz_arr
AS
l_word varchar(30);
c1 zzz_arr:=zzz_arr();
l_index PLS_INTEGER := 1;
BEGIN
LOOP
--слово, как набор символов: alfanumeric, "_", "-", "\". Всё остальное разделители.
l_word := REGEXP_SUBSTR(param1, '[[:alnum:]_\-]+', 1, l_index);
EXIT WHEN l_word IS NULL;
c1.EXTEND;
c1(l_index):=l_word;
l_index := l_index + 1;
END LOOP;
return c1;
END STR_ARR;



процесс после сабмита и всех других процессов (последний в списке)
обновляет ключевые поля поиска по базе

declare
c1 zzz_arr;
par number:=3;
qw varchar2(300);
begin
c1:=ZZZ_MAIN.STR_ARR(:P17_ADRESS1);
for i IN REVERSE 1..c1.count loop
if LENGTH(c1(i))>5 then
if par>0 then
qw:='update ZZZ.ZZZ_KLIENT set ADRESS_S'||par||'='''||c1(i)||''' where ID='||:KL_ID;
execute immediate qw;
end if;
par:=par-1;
end if;
end loop;
commit;
end;


итем - строка поиска
P17_SEACHADRESS

value or expression
select (t1."ADRESS_S1"||'+'||t1."ADRESS_S2"||'+'||t1."ADRESS_S3") from "ZZZ"."ZZZ_KLIENT" t1 where t1."ID" =:KL_ID

динамик актион на итем chache

function adrr_s(){
var v1="";
var v2="";
var v3="";
var nn=$("#P17_SEACHADRESS").val();
var ar=nn.split('+');
if (ar.length>0) {var v1=trim(ar[0]);}
if (ar.length>1) {var v2=trim(ar[1]);}
if (ar.length>2) {var v3=trim(ar[2]);}

$.ajax(
{mode: "abort",
dataType: 'html',
traditional:true,
cache:false,
type:'POST',
url: "wwv_flow.show",
data:{p_request:'APPLICATION_PROCESS=ZZZ_KLIENT_ADRESS',x01:v1,x02:v2,
x03:v3, x04:$("#KL_ID").val(), p_flow_id: $("#pFlowId").val(),
p_flow_step_id: $("#pFlowStepId").val(), p_instance: $("#pInstance").val()},
error:function(){alert('Ошибка записи!');}
}
);

my_report10.call_refresh();
}



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


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