Привет, функция F_B () возвращает в скобках "(i, m)" вместо 2 столбцов "i" и "m"!
CREATE FUNCTION F_A
(
i_productionsitename IN TEXT,
i_printjobid IN TEXT,
i_isnewlycreated IN INT,
o_returncode OUT TEXT,
o_message OUT TEXT
) AS $$
DECLARE
BEGIN
Select 'i', 'm' into o_ReturnCode, o_message;
END;
$$ LANGUAGE plpgsql;
SELECT * FROMF_A («DRM», «42», 1);=> i & m
CREATE FUNCTION F_B
(
i_productionsitename IN TEXT,
i_printjobid IN TEXT,
i_isnewlycreated IN INT,
o_returncode OUT TEXT,
o_message OUT TEXT
) AS $$
DECLARE
rec RECORD;
l_ReturnCode TEXT;
l_Message TEXT;
BEGIN
o_ReturnCode := 'l_OK';
o_Message := 'l_Kein Problem';
Select F_A (i_ProductionSiteName, i_PrintJobID , i_isnewlycreated) INTO l_ReturnCode, l_Message ; --rec ;
o_ReturnCode := l_ReturnCode; --' rec.o_message;
o_Message := l_Message;
END;
$$ LANGUAGE plpgsql;
SELECT * FROM F_B('DRM', '42',1);
=> дает (i, m) & null
Почему второй столбец пуст, а первый имеет 2 значения? Что случилось? Спасибо