/**
 * Retorna o custo total do dia do cardápio de trabalho
 * @param {Number} P_NRCARDAPIOTRAB Número do cardápio de trabalho
 * @param {Number} P_NRDIACARDTRAB Número do dia do cardápio
 * revisada
 */
CREATE OR REPLACE FUNCTION CUSTO_DIA_CARDTRAB
(
   P_NRCARDAPIOTRAB IN NUMBER,
   P_NRDIACARDTRAB IN NUMBER
) RETURN FLOAT
AS
   V_VRCUSTO FLOAT := 0;
BEGIN
   SELECT SUM(NVL(C.VRPECONSCARDTRAB/100 * D.QTCOMENSAIS, 0) * CUSTO_PRAT_CARDTRAB(C.NRCARDAPIOTRAB, C.CDFILAUXPRAT, C.CDPRATO))
     INTO V_VRCUSTO
        FROM COMPCARDTRAB C             
             INNER JOIN DIACARDTRAB D ON D.NRDIACARDTRAB = C.NRDIACARDTRAB
       WHERE C.NRCARDAPIOTRAB = P_NRCARDAPIOTRAB
         AND C.NRDIACARDTRAB = P_NRDIACARDTRAB;
   
   RETURN ROUND(NVL(V_VRCUSTO, 0), 5);
END;
/

-- VERSAO --
BEGIN ATUVEROBJ('CUSTO_DIA_CARDTRAB','6.35.009'); END;
/
