Вы определили свою процедуру с двумя параметрами. Ваш вызов этой процедуры передает ноль параметров. Таким образом, вы решаете это путем передачи двух параметров при вызове процедуры.
Или, возможно, удалив параметры из подписи процедуры. Потому что, откровенно говоря, ваш код не имеет большого смысла. Предложение WHERE проверяет параметры на соответствие жестко заданным значениям. Так что либо вы выбираете все записи в we_group_hof_k
- если переданы аргументы 1
и 'A'
- в противном случае нет.
Возможно, это то, что вам нужно?
PROCEDURE VALIDATION_TEST
(p_mid we_group_hof_k.mstatusid%TYPE,
p_status we_group_hof_k.cardstatus%TYPE
) is
begin
insert into test
select mstatusid, cardstatus
from we_group_hof_k
where mstatusid = p_mid
and cardstatus = p_status;
end;
Тогда вы бы назвали вашу процедуру так:
VALIDATION_TEST(1, 'A');
Хотя, поскольку эта процедура вызывается из Oracle Forms, вероятно, вам нужно передать элементы из блока Forms. Но только вы знаете это наверняка.