Ошибка в том, что вы передаете число 1
, когда оно ожидает значение BOOLEAN
; и нет неявного преобразования между этими типами данных:
exec PA_PRJ_IMP.contract_boq_import('B3F4C5933008B348B753F95AA99B3678', 3, 1, 3920);
PLS-00306: wrong number or types of arguments in call to 'CONTRACT_BOQ_IMPORT'
Изменение значения на TRUE (или FALSE) работает:
exec PA_PRJ_IMP.contract_boq_import('B3F4C5933008B348B753F95AA99B3678', 3, TRUE, 3920);
PL/SQL procedure successfully completed.
Но вы, вероятно, также хотите явно преобразовать первый аргумент в RAW
; он будет неявно преобразован, но лучше быть явным:
exec PA_PRJ_IMP.contract_boq_import(hextoraw('B3F4C5933008B348B753F95AA99B3678'), 3, TRUE, 3920);
PL/SQL procedure successfully completed.
Quick db <> fiddle , включая показ того, что произошло неявное преобразование (во втором вызове).