Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Вывод сообщений в приложении / 8 сообщений из 8, страница 1 из 1
20.03.2013, 01:31
    #38190708
Валисий
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод сообщений в приложении
Всем доброго времени суток!
Прошу совета у мастеров Апекса. В общем, имеется таблица, которая регулярно обновляется (например, ежечасно). Есть приложение, которое использует таблицу. В таблице есть поле DATA типа NUMBER, и поле ALARM, тоже типа NUMBER. Нужно, чтобы при каждом обновлении данных в таблице осуществлялась проверка всех строк, и если в каких-либо строках значение DATA > ALARM, выводилось сообщение, типа стандартного ALERT, в котором бы перечислялись ети строки.
Посоветуйте пожалуйста, с помощью чего такое можно сделать. Была мысль сделать триггер после UPDATE, но не понял, как связать триггер с сообщением. Также возникла мысль о процессах, но тут вообще темный лес. Если вдруг мысль о процессах правильная, если можно, киньте плз пару ссылок на литературу. Был на docs.oracle.com, но там как то маловато и маловразумительно.
Всем заранее спасибо.
...
Рейтинг: 0 / 0
20.03.2013, 08:36
    #38190845
rockclimber
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод сообщений в приложении
"Приложение" - имеется ввиду апекс-приложение?
Результаты проверки должен видеть тот, кто обновляет данные, или кто-то другой тоже?
Если результаты проверки должен видеть "кто-то другой", то как он должен узнавать, что надо посмотреть результаты проверки?

Пока могу только сказать, что стандартные сообщения (в PL/SQL коде) - это переменные APEX_APPLICATION.G_PRINT_SUCCESS_MESSAGE (сообщение об успешном выполнении) и APEX_APPLICATION.G_NOTIFICATION (сообщение об ошибке). В коде присваиваете им значения (например: создаете Process типа PL/SQL, в коде - присваиваете значения, создаете Branch, в свойствах ставите галочку "include process success message"), и они выводятся на экран.
...
Рейтинг: 0 / 0
21.03.2013, 01:45
    #38192422
Валисий
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод сообщений в приложении
Да, имеется в виду приложение апекса.
Сообщение должен видеть только пользователь приложения.
За совет большое спасибо. Не подскажете какую нибудь литературу по теме?
...
Рейтинг: 0 / 0
21.03.2013, 11:44
    #38192812
rockclimber
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод сообщений в приложении
ВалисийДа, имеется в виду приложение апекса.
Сообщение должен видеть только пользователь приложения.
За совет большое спасибо. Не подскажете какую нибудь литературу по теме?По теме апекса я вообще литературы не знаю. Есть документация и пара-тройка книжек, которые несильно отличаются от документации. Погуглите слова "APEX_APPLICATION.G_PRINT_SUCCESS_MESSAGE" и "denes kubicek apex demo"... Второе - довольно интересная штука, во многих случаях позволяет "черпать вдохновение".
...
Рейтинг: 0 / 0
21.03.2013, 20:53
    #38193961
Валисий
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод сообщений в приложении
В любом случае, большое спасибо за информацию.
...
Рейтинг: 0 / 0
27.03.2013, 01:44
    #38199695
Валисий
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод сообщений в приложении
Вопрос вдогонку: появилась мысль использовать для таких целей триггер. То есть, сделать триггер на INSERT, который перед вставкой записи будет проверять вышеупомянутое условие, и если DATA>ALARM, выдавать сообщение в приложении. При этом триггер не должен останавливать работу. Вот только опять же совершенно непонятно что писать в триггере. Цель - вывод сообщения по образу и подобия Java MessageBox. Здесь подобные проблемы уже пару раз обсуждались, но толковой информации я не нашел. Были упоминания о DBMS_Output.PUT_LINE, GET_LINE, но я так и не понял сути. Неужели в апексе нету никакого инструмента для подобных целей?
...
Рейтинг: 0 / 0
27.03.2013, 08:30
    #38199877
rockclimber
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод сообщений в приложении
ВалисийВопрос вдогонку: появилась мысль использовать для таких целей триггер. То есть, сделать триггер на INSERT, который перед вставкой записи будет проверять вышеупомянутое условие, и если DATA>ALARM, выдавать сообщение в приложении. При этом триггер не должен останавливать работу. Вот только опять же совершенно непонятно что писать в триггере.То же самое:
Код: plsql
1.
2.
3.
4.
5.
create or replace trigger ...
...
if data > alarm then
  apex_application.g_notification := 'ALARM!!!11';
end if;


ВалисийЦель - вывод сообщения по образу и подобия Java MessageBox.Я не знаю, что такое Java MessageBox, а вам какая степень подобия нужна?
...
Рейтинг: 0 / 0
16.01.2014, 17:38
    #38528629
anykeycheg
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод сообщений в приложении
rockclimber,

В процессе есть такой кусок кода:

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
if l_pass=:P3_OLD_PASS and :P3_NEW_PASS=:P3_CONFIRM_PASS then
execute immediate
'update persons set user_password=:l_new_pass
where person_id=:l_person_id' using l_new_pass,l_person_id;
commit;
apex_application.g_print_success_message:='Пароль изменен';
else
apex_application.g_notification :='Неверен старый пароль или подтверждение нового пароля!';
--raise e;
end if;



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


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