Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Как передать в триггер значение item из формы / 3 сообщений из 3, страница 1 из 1
27.12.2013, 11:44
    #38514030
serg_777777
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как передать в триггер значение item из формы
Есть форма, добавляющая строку (новое оборудование) в таблицу.
Для генирации №инв. использую sequence c trigger.
Но требуется что бы №инв. был с признаком офиса. Данный признак отсутсвует в этой таблице и планируется, вводиться в форме оператором.
Планирую сипользовать такую конструкцию:
Код: plsql
1.
    select  'xxxxxxxx' || "EQ_INVENT_NUMBER_DIT_SEQ".nextval into :NEW."EQ_INVENT_NUMBER_DIT" from sys.dual; 



В таком виде все работает, но не могу(не соображу) как передать в триггер значение из Item (P26_TU) формы.

Так не работает:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
create or replace TRIGGER  "EQUIPMENT_T1" 
BEFORE
insert on "EQUIPMENT"
for each row
begin

if :NEW."EQ_INVENT_NUMBER_DIT" is null then 
   :new."TU_ID" := :P26_TU; 
    select  :new."TU_ID" || "EQ_INVENT_NUMBER_DIT_SEQ".nextval into :NEW."EQ_INVENT_NUMBER_DIT" from sys.dual; 
  end if; 

end;​


и так тоже:
Код: plsql
1.
2.
3.
  ..
    select  :P26_TU ||"EQ_INVENT_NUMBER_DIT_SEQ".nextval into :NEW."EQ_INVENT_NUMBER_DIT" from sys.dual;
  ..



Прошу подсказать.
...
Рейтинг: 0 / 0
27.12.2013, 11:47
    #38514034
serg_777777
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как передать в триггер значение item из формы
забыл указать ошибку:

Compilation failed, line 5 (10:44:47) The line numbers associated with compilation errors are relative to the first BEGIN statement. This only affects the compilation of database triggers.
PLS-00049: bad bind variable 'P26_TU'
...
Рейтинг: 0 / 0
27.12.2013, 12:02
    #38514046
serg_777777
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как передать в триггер значение item из формы
сам задал вопрос, сам решил :)
Вот так надо использовать:

select v('P26_TU')||'00'||"EQ_INVENT_NUMBER_DIT_SEQ".nextval into :NEW."EQ_INVENT_NUMBER_DIT" from sys.dual;
...
Рейтинг: 0 / 0
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Как передать в триггер значение item из формы / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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