При по-внимателно разглеждане:Трябва само да разделите съставния тип връщане по този начин:
CREATE OR REPLACE VIEW "Sumario" AS
SELECT ...
(conta_relatos("Fatores"."ID", "Fatores_1"."ID")).*
FROM ...
Подробности за достъпа до съставни типове в ръководството.
Като настрана:бих ви посъветвал да не използвате скоби за вашите JOIN, освен ако не знаете точно какво правите. Начинът, по който го имате, вие налагате един конкретен план за изпълнение. Вероятно не е най-добрият.
Първият подход изтълкува погрешно съобщението за грешка
Когато дефинирате функция с RETURNS record
(което избягвам, когато е възможно), трябва да предоставите списък с дефиниции на колони с всяко извикване, като:
SELECT * FROM conta_relatos(1,2) AS f(col1 int, col2 text, ...)
Цитирам ръководството тук :
Чистото решение е да промените функцията си така, че да връща добре познат тип вместо анонимен запис. Има различни начини за това в зависимост от обстоятелствата. Ако имате проблеми с пренаписването на вашата функция, отворете друг въпрос.