Я нахожусь в процессе изучения Oracle APEX версии 18. Для моего первого проекта я создал форму, сгенерированную из представления, основанного на двух таблицах:
Когда форма отправлена, вызывается следующий триггер, чтобы данные могли быть вставлены в ее правильную таблицу:
CREATE OR REPLACE EDITIONABLE TRIGGER "TRG_VIEW_PERSON_COMPUTER_INSRT"
INSTEAD OF INSERT ON view_person_computer
DECLARE
duplicate_info EXCEPTION;
PRAGMA EXCEPTION_INIT (duplicate_info, -00001);
BEGIN
INSERT INTO PERSON (
ID,
FIRST_NAME,
LAST_NAME,
EMAIL,
PHONE
) VALUES (
SEQPERSON.NEXTVAL,
:NEW.FIRST_NAME,
:NEW.LAST_NAME,
:NEW.EMAIL,
:NEW.PHONE
);
INSERT INTO COMPUTER (
ID,
PERSON_ID,
MAKE,
MODEL,
CPU,
RAM,
HARD_DRIVE
) VALUES (
SEQCOMPUTER.NEXTVAL,
SEQPERSON.CURRVAL,
:NEW.MAKE,
:NEW.MODEL,
:NEW.CPU,
:NEW.RAM,
:NEW.HARD_DRIVE
);
EXCEPTION
WHEN duplicate_info THEN
RAISE_APPLICATION_ERROR (
num=> -20107,
msg=> 'Duplicate customer or project id'
);
END trg_view_person_computer_insrt;
В настоящее время кнопка «Добавить другой компьютер»не работаетТаким образом, у человека может быть только один связанный с ним компьютер.На следующем этапе проекта я хочу, чтобы кнопка работала, но мои знания об APEX все еще очень ограничены.
Цель: при нажатии кнопки «Добавить другой компьютер» она должна дублировать компьютерсвязанные текстовые поля, чтобы пользователь мог ввести другой компьютер.Каков наилучший способ добавить эту функциональность?
Спасибо!