|
|
|
Как из процедуры выдать сообщение и продолжить?
|
|||
|---|---|---|---|
|
#18+
То есть, пользователь прочтет, нажмет "ОК" и процедура двинется дальше. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2003, 10:15 |
|
||
|
Как из процедуры выдать сообщение и продолжить?
|
|||
|---|---|---|---|
|
#18+
Из какой процедуры? Если ты имел ввиду процедуру написанную на PL/SQL , находящуюся в пакете инстанса и вообщето выполняющуюся на сервере, то расскажика мне приятель у тебя что все юзеры будут бегать в серверную читать сообщения и нажимать на кнопку ОК??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2003, 10:31 |
|
||
|
Как из процедуры выдать сообщение и продолжить?
|
|||
|---|---|---|---|
|
#18+
Писали мы когда-то подобное. Вкраце: через открытие дополнительной сесии и пайпов, обменивающихся данными между этими сессиями. Но ИМХО в рабочем проекте от этого уйти. Это интересная задачка, но пусть она и останется как тренировка мозгов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2003, 10:43 |
|
||
|
Как из процедуры выдать сообщение и продолжить?
|
|||
|---|---|---|---|
|
#18+
В том то и дело что проще это все что хочешь написать на клиенте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2003, 10:45 |
|
||
|
Как из процедуры выдать сообщение и продолжить?
|
|||
|---|---|---|---|
|
#18+
Есть клиентское приложение, в котором можно использовать процедуры PL/SQL. Если в процедуре вставить P_EXCEPTION(0, 'тра-та-та'); в клиенте вылетит окно с красным крестом, словами "тра-та-та" и процедура останавливается, непрокоммиченые транзакции откатываются. P_EXCEPTION выглядит так: create or replace procedure P_EXCEPTION ( nFLAG_SMART in number, sTEXT in varchar2 ) as nCOUNTER number; sCHAR varchar2(1); nNON_SPACED number := 0; sTMP varchar2(2000) := null; begin if nFLAG_SMART <> 0 then return; end if; for nCOUNTER in 1..length(sTEXT) LOOP sCHAR := substr(sTEXT, nCOUNTER, 1); if sCHAR in (chr(10), chr(13), chr(32)) then nNON_SPACED := 0; else nNON_SPACED := nNON_SPACED + 1; end if; if nNON_SPACED >= 125 then sTMP := sTMP || chr(32); nNON_SPACED := 0; end if; sTMP := sTMP || sCHAR; if nCOUNTER = 116 and substr(sTEXT, nCOUNTER + 1, 1) in (chr(10), chr(13), chr(32)) then sTMP := sTMP || chr(160); nNON_SPACED := nNON_SPACED + 1; end if; end LOOP; raise_application_error( -20103, sTMP ); end; Так вот, как бы замутить вылетающее окно, но не останавливающее процедуру? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2003, 11:29 |
|
||
|
Как из процедуры выдать сообщение и продолжить?
|
|||
|---|---|---|---|
|
#18+
В клиентской части Парус 8.хх такое сделать не возможно. Если ты запустил P_exception то у тебя однозначно вылетит окошко с красным кресто и откат ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2003, 12:33 |
|
||
|
Как из процедуры выдать сообщение и продолжить?
|
|||
|---|---|---|---|
|
#18+
2 biv: А есть варианты получения окна? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2003, 12:38 |
|
||
|
Как из процедуры выдать сообщение и продолжить?
|
|||
|---|---|---|---|
|
#18+
2 biv: Присоветовали мне использовать PACKAGE dbms_output.put_line('line'); Не подскажешь, как в конце вывести все, что в ходе процедуры выводилось этим способом? Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2003, 13:17 |
|
||
|
Как из процедуры выдать сообщение и продолжить?
|
|||
|---|---|---|---|
|
#18+
Вариантов получения окна нет. Использовать dbms_output также не получиться :(( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2003, 18:19 |
|
||
|
Как из процедуры выдать сообщение и продолжить?
|
|||
|---|---|---|---|
|
#18+
ацтой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2003, 19:14 |
|
||
|
Как из процедуры выдать сообщение и продолжить?
|
|||
|---|---|---|---|
|
#18+
Вообще то же у же сказали создаешь новую сессию и с помощью пакета DBMS_PIPE передаешь что нужно в новую сессию и обрабатываешь как надо, опять же окно можешь вызвать только на клиенте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2003, 04:40 |
|
||
|
Как из процедуры выдать сообщение и продолжить?
|
|||
|---|---|---|---|
|
#18+
PS Или тебе конкретный листинг процедур надо показать??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2003, 04:41 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=32105566&tid=1991818]: |
0ms |
get settings: |
6ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
397ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 211ms |
| total: | 693ms |

| 0 / 0 |
