Oracle Forms Post-Query FRM-40735 и ORA-01422
Я хочу отобразить элемент из другой таблицы, я использую POST-QUERY
вызывать:
SELECT Stock_code
INTO :exchange.stockcode
FROM Exchange_Stock
WHERE Exchange_code = :exchange.Exchange_code;
это придумать FRM-40735
а также ORA-01422
но он отображает некоторые записи (не все), я понятия не имею, что не так
1 ответ
Скорее всего POST-QUERY
триггер срабатывает сразу после заполнения полей табличного блока с несколькими записями. ОчевидноExchange_code
значения не уникальны во всех данных таблицы, тогда как SELECT .. INTO .. FROM ...
предложение может принести только одну запись строки.
Итак, вы можете попытаться отфильтровать результаты, чтобы получить отдельные строки для каждой комбинации полей параметров, например :exchange.Exchange_code
& :exchange.code_order
вместо только :exchange.Exchange_code
поле в WHERE
состояние:
SELECT Stock_code
INTO :exchange.stockcode
FROM Exchange_Stock
WHERE Exchange_code = :exchange.Exchange_code
AND code_order = :exchange.code_order;
где важно получить одну строку из запроса, сопоставленного для каждой записи в блоке данных. Вы все равно можете добавить в запрос дополнительные условия, если это условие еще не предусмотрено.