А есть пример получения из хранимой данные курсора из пакета оракл
Пример пакета
CREATE OR REPLACE PACKAGE INT4DB."tspkg_PaymentSchedule" AS
TYPE "TypeCursorSchedule" IS REF CURSOR;
PROCEDURE "GetProducts"(IDin IN NUMBER,DEP_IDin IN NUMBER, result_cursor IN OUT
"TypeCursorSchedule");
END "tspkg_PaymentSchedule";/
CREATE OR REPLACE PACKAGE BODY INT4DB."tspkg_PaymentSchedule" AS
PROCEDURE "GetProducts"(IDin IN NUMBER, DEP_IDin IN NUMBER, result_cursor IN OUT "TypeCursorSchedule")
IS
v_cursor "TypeCursorSchedule";
BEGIN
OPEN v_cursor FOR
SELECT code
FROM colvir.ZHAS_VIU_GRAF@T_CRM_CORT2
WHERE ID = IDin --817514550
AND DEP_ID = DEP_IDin;--2;
result_cursor := v_cursor;
END "GetProducts";
END"tspkg_PaymentSchedule";/
Сам попытался написать, но ругается на dataValueTypeManager
var dataValueTypeManager =(DataValueTypeManager)userConnection.AppManagerProvider.GetManager("DataValueTypeManager");
var storedProcedure =new StoredProcedure(userConnection,"GetProducts");
storedProcedure.WithParameter("817514550");
storedProcedure.WithParameter("2");
storedProcedure.WithOutputParameter("return_value", dataValueTypeManager.GetInstanceByName("REFCursor???"));
storedProcedure.PackageName="tspkg_PaymentSchedule";
А я вот не совсем понял как запускать процедуру с параметрами. Без параметров запускается, хотя тоже не все понятно)
Например, что у нас хранится в dataValueTypeManager?
Как мне надо описать в BPMonline и запустить процедуру, которая должна получить входящим параметром ID текущего пользователя, ну и например № договора, из которого она запускается?
Соответственно, потом этот идентификатор следует передать в хранимую процедуру.
dataValueTypeManager - это ядровый менеджер, который в данном конкретном случае необходим, чтобы привести получаемый из процедуры параметр к определенному типу.
Анна, а не могли бы вы привести пример, о котором я говорил в предыдущем комментарии:
"D.T." написал:
Как мне надо описать в BPMonline и запустить процедуру, которая должна получить входящим параметром ID текущего пользователя, ну и например № договора, из карточки которого она запускается?