DROP TYPE RELATORIO_AF_EMAIL_TABLE
/

DROP TYPE RELATORIO_AF_EMAIL_TYPE
/

CREATE TYPE RELATORIO_AF_EMAIL_TYPE AS OBJECT (
  NRSEQAPURAF     VARCHAR2(10),
  CDFILDEST       VARCHAR2(4),
  NMFILIAL        VARCHAR2(30),
  CDFILLANC       VARCHAR2(4),
  NRAUTOFORN      VARCHAR2(10),
  CDOPERADOR      VARCHAR2(12),
  CDFORNECED      VARCHAR2(21),
  VRTOTALAF       FLOAT(126),
  DTAUTOFORN      DATE,
  IDTIPOEMITAF    VARCHAR2(1),
  NMEMPRESA       VARCHAR2(150),
  SGESTADOEMPR    VARCHAR2(2),
  NRCEPEMPR       VARCHAR2(15),
  DSENDEEMPR      VARCHAR2(250),
  NMMUNIEMPR      VARCHAR2(30),
  IDTPIJUREMPR    VARCHAR2(1),
  NRINSJUREMPR    VARCHAR2(20),
  NMBAIREMPR      VARCHAR2(50),
  NMFILIDEST      VARCHAR2(30),
  NRINSJURFILI    VARCHAR2(20),
  IDTPIJURFILI    VARCHAR2(1),
  NMRAZSOCFILI    VARCHAR2(100),
  DSPERIENTFIL    VARCHAR2(50),
  OBSERVACAO      VARCHAR2(1),
  CDINSCESTA      VARCHAR2(20),
  NRINSCESTAEMPR  VARCHAR2(20),
  CDFORMPGTO      VARCHAR2(2),
  IDTPFORPGTAF    VARCHAR2(1),
  NRDIAPGFIXAF    NUMBER(2),
  NRPARCPGTOAF    NUMBER(2),
  IDSITUATUAAF    VARCHAR2(1),
  IDIMAUTOFORN    VARCHAR2(1),
  IDTIPOFRETAF    VARCHAR2(1),
  IDAUTOFORNEX    VARCHAR2(1),
  IDTIPOLANCAF    VARCHAR2(1),
  IDAFFORALIM     VARCHAR2(1),
  IDBAIXAAF       VARCHAR2(1),
  IDTPIJURFORN    VARCHAR2(1),
  NRINSJURFORN    VARCHAR2(20),
  NMRAZSOCFORN    VARCHAR2(100),
  NMFANTFORN      VARCHAR2(40),
  DSENDEFORN      VARCHAR2(60),
  NMCONTFORN      VARCHAR2(30),
  NRTELEFORN1     VARCHAR2(25),
  DSEMAILCOT      VARCHAR2(100),
  IDTPIJURCLIE    VARCHAR2(1),
  NRINSJURCLIE    VARCHAR2(20),
  NMRAZSOCCLIE    VARCHAR2(100),
  DSENDECLIE      VARCHAR2(60),
  NMBAIRCLIE      VARCHAR2(50),
  SGESTADOCLIE    VARCHAR2(2),
  NRCEPCLIE       VARCHAR2(15),
  NRINSESTCLIE    VARCHAR2(20),
  NMMUNICLIE      VARCHAR2(30),
  CDCLIENTE       VARCHAR2(21),
  NMOPERADOR      VARCHAR2(40),
  NMMUNICIFIL     VARCHAR2(30),
  DSENDEFILI      VARCHAR2(60),
  NMBAIRFILI      VARCHAR2(50),
  SGESTADOFIL     VARCHAR2(2),
  NRCEPFILI       VARCHAR2(15),
  NRTELEFILI      VARCHAR2(25),
  DSEMAILFILI     VARCHAR2(40),
  DTPROGENTAF     DATE,
  CDPRODUTO       VARCHAR2(10),
  QTPROGENTAF     FLOAT(126),
  VRPREUNIAF      FLOAT(126),
  VALTOTAL        FLOAT(126),
  CDARVPROD       VARCHAR2(20),
  NMPRODUTO       VARCHAR2(50),
  CDMARCA         VARCHAR2(5),
  NMMARCA         VARCHAR2(20),
  NMMARCA_SEG     VARCHAR2(20),
  NMSEGMARCA      VARCHAR2(50),
  TXOBSITMAF      VARCHAR2(2000),
  DSPRAZOPGTAF    VARCHAR2(1100),
  NMFORMPGTO      VARCHAR2(30),
  DSOBSFILIAL     VARCHAR2(2000),
  IDEXIBEOBSFIL   VARCHAR2(1),
  NMREPRINSEST    VARCHAR2(150),
  NRINSJURIEST    VARCHAR2(20),
  IDTPIJURIEST    VARCHAR2(1),
  DSENDEIEST      VARCHAR2(250),
  NMBAIRIEST      VARCHAR2(50),
  SGESTADOEST     VARCHAR2(2),
  NRCEPIEST       VARCHAR2(15),
  NMMUNICIPIOEST VARCHAR2(30),
  IDENDFATURAMENTOAF  VARCHAR2(2),
  IDREPRESENTAFATAF   VARCHAR2(2),
  IDENDCOBRANCAAF     VARCHAR2(2),
  IDREPRESENTACOBRAAF VARCHAR2(2),
  CDPRODUTOXML        VARCHAR2(2000),
  DSPRODUTO           VARCHAR2(4000)
  )
/

CREATE TYPE RELATORIO_AF_EMAIL_TABLE AS TABLE OF RELATORIO_AF_EMAIL_TYPE
/

CREATE OR REPLACE FUNCTION RELATORIO_AF_EMAIL (
  P_NRSEQAPURAF      IN VARCHAR2,
  P_CDFILLANC        IN VARCHAR2,
  P_IMPRIMEOBSPROD   IN VARCHAR2,
  P_IDEXIBEOBSFIL    IN VARCHAR2,
  P_CDFORNECED       IN VARCHAR2,
  P_CDARVPRODINI     IN VARCHAR2,
  P_CDARVPRODFIN     IN VARCHAR2,
  P_CDFILDEST        IN VARCHAR2, --Lista
  P_NRAUTOFORN       IN VARCHAR2, --Lista
  P_NRSEQENVIOAFORN  IN VARCHAR2, --Lista
  P_CDOPERADOR       IN VARCHAR2, --Lista
  P_DTENTREGAINI     IN DATE,
  P_DTENTREGAFIN     IN DATE,
  P_DTAUTOFORNINI    IN DATE,
  P_DTAUTOFORNFIN    IN DATE)
  RETURN RELATORIO_AF_EMAIL_TABLE PIPELINED AS L_RELATORIO_AF_EMAIL_TYPE RELATORIO_AF_EMAIL_TYPE;
  V_PRAZOPGTAF    VARCHAR2(1100);
  V_DSOBSFILIAL   VARCHAR2(2000);

  /*ENDERECO DE ENTREGA*/
  V_NMMUNICIFIL   MUNICIPIO.NMMUNICIPIO%TYPE;
  V_DSENDEFILI    VARCHAR2(60);
  V_NMBAIRFILI    VARCHAR2(50);
  V_SGESTADOFIL   ENDEFILI.SGESTADO%TYPE;
  V_NRCEPFILI     ENDEFILI.NRCEPFILI%TYPE;
  V_NRTELEFILI    ENDEFILI.NRTELEFILI%TYPE;    
  V_DSEMAILFILI   ENDEFILI.DSEMAILFILI%TYPE;

  /*ENDERECO DE FATURAMENTO PADRAO DEPHI*/
  V_NMREPRINSEST    VARCHAR2(150);
  V_NRINSJURIEST    INSCRESTAD.NRINSJURIEST%TYPE;
  V_IDTPIJURIEST    INSCRESTAD.IDTPIJURIEST%TYPE;
  V_DSENDEIEST      VARCHAR2(250);
  V_NMBAIRIEST      INSCRESTAD.NMBAIRIEST%TYPE;
  V_SGESTADOEST     INSCRESTAD.SGESTADO%TYPE;
  V_NRCEPIEST       INSCRESTAD.NRCEPIEST%TYPE;
  V_NMMUNICIPIOEST MUNICIPIO.NMMUNICIPIO%TYPE;
  V_CDINSCESTA     VARCHAR2(20);

  /*ENDERECO DE COBRANCA PADRAO DELPHI*/
  V_IDTPIJUREMPR   EMPRESA.IDTPIJUREMPR%TYPE;
  V_NRINSJUREMPR   EMPRESA.NRINSJUREMPR%TYPE;
  V_NMEMPRESA      VARCHAR2(150);
  V_DSENDEEMPR     VARCHAR2(250);
  V_NMBAIREMPR     EMPRESA.NMBAIREMPR%TYPE;
  V_SGESTADOEMPR   EMPRESA.SGESTADO%TYPE;
  V_NRCEPEMPR      EMPRESA.NRCEPEMPR%TYPE;
  V_NMMUNIEMPR     MUNICIPIO.NMMUNICIPIO%TYPE;
  V_NRINSCESTAEMPR VARCHAR2(20);

  /*ENDERECO COBRANCA E FATURAMENTO CLIENTE PADRAO DELPHI*/
  V_IDTPIJURCLIE  CLIENTE.IDTPIJURCLIE%TYPE;
  V_NRINSJURCLIE  CLIENTE.NRINSJURCLIE%TYPE;
  V_NMRAZSOCCLIE  CLIENTE.NMRAZSOCCLIE%TYPE;
  V_DSENDECLIE    ENDECLIE.DSENDECLIE%TYPE; 
  V_NMBAIRCLIE    ENDECLIE.NMBAIRCLIE%TYPE;
  V_SGESTADOCLIE  ENDECLIE.SGESTADO%TYPE;
  V_NRCEPCLIE     ENDECLIE.NRCEPCLIE%TYPE;
  V_NMMUNICLIE    MUNICIPIO.NMMUNICIPIO%TYPE;
  V_NRINSESTCLIE  CLIENTE.NRINSESTCLIE%TYPE;

  V_IDENDFATURAMENTOAF       VARCHAR2(2);
  V_IDREPRESENTAFATAF        VARCHAR2(2);
  V_IDENDCOBRANCAAF          VARCHAR2(2);
  V_IDREPRESENTACOBRAAF      VARCHAR2(2);
  V_CDPRODUTOXML             VARCHAR2(2000);
  V_DSPRODUTO                VARCHAR2(4000);


BEGIN
  FOR C_ITEM IN
    (
      WITH
        AF AS ( SELECT
                  AUTOFORNE.NRSEQAPURAF,   AUTOFORNE.CDFILDEST,      AUTOFORNE.CDFILLANC,    AUTOFORNE.NRAUTOFORN,   AUTOFORNE.CDOPERADOR,
                  AUTOFORNE.CDFORNECED,    AUTOFORNE.VRTOTALAF,      AUTOFORNE.DTAUTOFORN,   AUTOFORNE.IDTIPOEMITAF, AUTOFORNE.CDFORMPGTO,
                  AUTOFORNE.IDTPFORPGTAF,  AUTOFORNE.NRDIAPGFIXAF,   AUTOFORNE.NRPARCPGTOAF, AUTOFORNE.IDSITUATUAAF, AUTOFORNE.IDIMAUTOFORN,
                  AUTOFORNE.IDTIPOFRETAF,  AUTOFORNE.IDAUTOFORNEX,   AUTOFORNE.IDTIPOLANCAF, AUTOFORNE.IDAFFORALIM,  AUTOFORNE.IDBAIXAAF,
                  FILIAL.NMFILIAL,         FORMATMASK(FILIAL.IDTPIJURFILI, FILIAL.NRINSJURFILI) AS NRINSJURFILI,      FILIAL.IDTPIJURFILI,    FILIAL.NMRAZSOCFILI,    FILIAL.CDINSCESTA,
                  FILIAL.CDREGIAO,         FILIAL.NMFILIAL AS NMFILIDEST,
                  EMPRESA.NMEMPRESA,       SUBSTR(REPLACE(EMPRESA.NRCEPEMPR, '-', ''),0,5)||'-'||SUBSTR(REPLACE(EMPRESA.NRCEPEMPR, '-', ''),6,3) NRCEPEMPR,        EMPRESA.DSENDEEMPR,     EMPRESA.IDTPIJUREMPR,   EMPRESA.SGESTADO AS SGESTADOEMPR,
                  FORMATMASK(EMPRESA.IDTPIJUREMPR, EMPRESA.NRINSJUREMPR) AS NRINSJUREMPR,    EMPRESA.NMBAIREMPR,       EMPRESA.NRINSCESTA AS NRINSCESTAEMPR,
                  MUNICIPIO.NMMUNICIPIO AS NMMUNIEMPR, PARCMPSUP.DSPERIENTFIL, NVL(P_IMPRIMEOBSPROD, 'N') OBSERVACAO,
                  INSCRESTAD.NMREPRINSEST, INSCRESTAD.DSENDEIEST, INSCRESTAD.NRINSJURIEST, INSCRESTAD.IDTPIJURIEST,
                  INSCRESTAD.NMBAIRIEST, SUBSTR(REPLACE(INSCRESTAD.NRCEPIEST, '-', ''),0,5)||'-'||SUBSTR(REPLACE(INSCRESTAD.NRCEPIEST, '-', ''),6,3) NRCEPIEST, INSCRESTAD.CDMUNICIPIO CDMUNICIPIOEST,
                  MUNICIPIOEST.NMMUNICIPIO NMMUNICIPIOEST, INSCRESTAD.SGESTADO SGESTADOEST
                FROM AUTOFORNE  INNER JOIN FILIAL    ON AUTOFORNE.CDFILDEST = FILIAL.CDFILIAL
                                INNER JOIN PARCMPSUP ON AUTOFORNE.CDFILDEST = PARCMPSUP.CDFILIAL
                                INNER JOIN EMPRESA   ON AUTOFORNE.CDEMPRESA = EMPRESA.CDEMPRESA
                                INNER JOIN MUNICIPIO ON EMPRESA.CDPAIS      = MUNICIPIO.CDPAIS
                                                    AND EMPRESA.SGESTADO    = MUNICIPIO.SGESTADO
                                                    AND EMPRESA.CDMUNICIPIO = MUNICIPIO.CDMUNICIPIO
                                INNER JOIN INSCRESTAD ON FILIAL.CDINSCESTA = INSCRESTAD.CDINSCESTA
                                                     AND FILIAL.CDEMPRESA  = INSCRESTAD.CDEMPRESA
                                INNER JOIN MUNICIPIO MUNICIPIOEST
                                                     ON INSCRESTAD.CDPAIS      = MUNICIPIOEST.CDPAIS
                                                    AND INSCRESTAD.SGESTADO    = MUNICIPIOEST.SGESTADO
                                                    AND INSCRESTAD.CDMUNICIPIO = MUNICIPIOEST.CDMUNICIPIO
                WHERE
                  NVL(AUTOFORNE.NRSEQAPURAF, 'N') = NVL(P_NRSEQAPURAF, NVL(AUTOFORNE.NRSEQAPURAF, 'N')) AND
                  AUTOFORNE.CDFILLANC = NVL(P_CDFILLANC, AUTOFORNE.CDFILLANC) AND
                  INSTR(NVL(P_CDFILDEST, FILIAL.CDFILIAL), FILIAL.CDFILIAL) > 0 AND
                  ((INSTR(NVL(P_NRAUTOFORN, AUTOFORNE.NRAUTOFORN), AUTOFORNE.NRAUTOFORN) > 0) OR (P_NRAUTOFORN = 'T'))  AND
                  ((INSTR(NVL(P_NRSEQENVIOAFORN, NVL(AUTOFORNE.NRSEQENVIOAFORN, 'X')), NVL(AUTOFORNE.NRSEQENVIOAFORN, 'X')) > 0) OR (P_NRSEQENVIOAFORN = 'T')) AND
                  (TO_CHAR(AUTOFORNE.DTAUTOFORN, 'DD/MM/YYYY') BETWEEN NVL(P_DTAUTOFORNINI, TO_CHAR(AUTOFORNE.DTAUTOFORN, 'DD/MM/YYYY')) AND NVL(P_DTAUTOFORNFIN, TO_CHAR(AUTOFORNE.DTAUTOFORN, 'DD/MM/YYYY'))) AND
                  AUTOFORNE.IDAFFORALIM = 'N' AND
                  AUTOFORNE.IDSITUATUAAF IS NULL  AND
                  NVL(AUTOFORNE.IDBAIXAAF, '1') IN ('1', '2', '3')  AND
                  NVL(AUTOFORNE.IDAFOPERLOG, '1') = '1' AND
                  ((NVL(AUTOFORNE.IDAFPRODWEB, 'N') = 'N') OR (AUTOFORNE.IDBAIXAAF IN ('2', '3')))  AND
                  NVL(AUTOFORNE.IDBAIXAAF,'0') <> '4' AND
                  NVL(AUTOFORNE.IDBAIXAAF,'0') <> '6' AND
                  NVL(AUTOFORNE.IDBAIXAAF,'0') <> '5'),

        IT AS ( SELECT
                  ITEMAUTF.CDFILDEST,    ITEMAUTF.CDFILLANC,   ITEMAUTF.NRAUTOFORN,
                  ITEMAUTF.DTPROGENTAF,  ITEMAUTF.QTPROGENTAF, ITEMAUTF.VRPREUNIAF,
                  ITEMAUTF.QTPROGENTAF * ITEMAUTF.VRPREUNIAF AS VALTOTAL,
                  PRODUTO.CDPRODUTO,     PRODUTO.CDARVPROD,    PRODUTO.NMPRODUTO,
                  MARCA.CDMARCA,         MARCA.NMMARCA,        SEGMARCA.NMMARCA AS NMMARCA_SEG,
                  ITEMAUTF.TXOBSITMAF,   CASE NVL(SEGMARCA.NMMARCA, 'XXXX') WHEN 'XXXX' THEN MARCA.NMMARCA ELSE MARCA.NMMARCA||'/'||SEGMARCA.NMMARCA END NMSEGMARCA
                FROM
                  ITEMAUTF  INNER JOIN PRODUTO        ON ITEMAUTF.CDPRODUTO   = PRODUTO.CDPRODUTO
                            INNER JOIN MARCA          ON ITEMAUTF.CDMARCA     = MARCA.CDMARCA
                             LEFT JOIN MARCA SEGMARCA ON ITEMAUTF.CDSEGMARCA  = SEGMARCA.CDMARCA
                WHERE
                  (TO_CHAR(DTPROGENTAF, 'DD/MM/YYYY') BETWEEN NVL(P_DTENTREGAINI, TO_CHAR(DTPROGENTAF, 'DD/MM/YYYY')) AND NVL(P_DTENTREGAFIN, TO_CHAR(DTPROGENTAF, 'DD/MM/YYYY'))) AND
                  PRODUTO.CDARVPROD BETWEEN NVL(P_CDARVPRODINI, PRODUTO.CDARVPROD) AND NVL(P_CDARVPRODFIN, PRODUTO.CDARVPROD)),

        OP AS ( SELECT
                  CDOPERADOR, NMOPERADOR
                FROM
                  OPERADOR
                WHERE (INSTR(NVL(P_CDOPERADOR, CDOPERADOR), CDOPERADOR) > 0)),

        FN AS ( SELECT
                  F.CDFORNECED, F.IDTPIJURFORN, FORMATMASK(F.IDTPIJURFORN, F.NRINSJURFORN) AS NRINSJURFORN, F.NMRAZSOCFORN, F.NMFANTFORN,
                  E.DSENDEFORN, E.NMCONTFORN, E.NRTELEFORN1, F.DSEMAILCOT, E.IDTPENDEFORN
                FROM
                  FORNECEDOR F LEFT JOIN ENDEFORN E  ON F.CDFORNECED   = E.CDFORNECED
                WHERE
                  F.CDFORNECED = NVL(P_CDFORNECED, F.CDFORNECED)  AND
                  E.IDTPENDEFORN = 'P'),

        CF AS ( SELECT
                  CLIENFILIAL.CDCLIENTE, CLIENFILIAL.CDFILIAL
                FROM
                  CLIENFILIAL
                WHERE
                  CLIENFILIAL.IDCLIENPRIN = 'S'),

        EC AS ( SELECT
                  ENDECLIE.DSENDECLIE, ENDECLIE.NMBAIRCLIE, ENDECLIE.SGESTADO AS SGESTADOCLIE, SUBSTR(REPLACE(ENDECLIE.NRCEPCLIE, '-', ''),0,5)||'-'||SUBSTR(REPLACE(ENDECLIE.NRCEPCLIE, '-', ''),6,3) NRCEPCLIE,
                  CLIENTE.CDCLIENTE, CLIENTE.IDTPIJURCLIE, FORMATMASK(CLIENTE.IDTPIJURCLIE, CLIENTE.NRINSJURCLIE) AS NRINSJURCLIE, CLIENTE.NMRAZSOCCLIE,  CLIENTE.NRINSESTCLIE,
                  MUNICIPIO.NMMUNICIPIO AS NMMUNICLIE
                FROM
                  CLIENTE INNER JOIN ENDECLIE  ON CLIENTE.CDCLIENTE    = ENDECLIE.CDCLIENTE
                          INNER JOIN MUNICIPIO ON ENDECLIE.CDPAIS      = MUNICIPIO.CDPAIS
                                              AND ENDECLIE.SGESTADO    = MUNICIPIO.SGESTADO
                                              AND ENDECLIE.CDMUNICIPIO = MUNICIPIO.CDMUNICIPIO
                WHERE
                  ENDECLIE.IDTPENDECLIE = 'P'),

        EF AS ( SELECT
                  ENDEFILI.CDFILIAL, SUBSTR(REPLACE(ENDEFILI.NRCEPFILI, '-', ''),0,5)||'-'||SUBSTR(REPLACE(ENDEFILI.NRCEPFILI, '-', ''),6,3) NRCEPFILI, ENDEFILI.SGESTADO AS SGESTADOFIL,
                  ENDEFILI.NMBAIRFILI, DSENDEFILI, NMMUNICIPIO AS NMMUNICIFIL, NRTELEFILI, DSEMAILFILI
                FROM
                  ENDEFILI  INNER JOIN MUNICIPIO ON ENDEFILI.CDPAIS       = MUNICIPIO.CDPAIS
                                                AND ENDEFILI.SGESTADO     = MUNICIPIO.SGESTADO
                                                AND ENDEFILI.CDMUNICIPIO  = MUNICIPIO.CDMUNICIPIO
                WHERE
                  ENDEFILI.IDTPENDEFILI = 'P'),

        EE AS ( SELECT
                  ENDEFILI.CDFILIAL, SUBSTR(REPLACE(ENDEFILI.NRCEPFILI, '-', ''),0,5)||'-'||SUBSTR(REPLACE(ENDEFILI.NRCEPFILI, '-', ''),6,3) NRCEPFILIEE, ENDEFILI.SGESTADO AS SGESTADOFILEE,
                  ENDEFILI.NMBAIRFILI NMBAIRFILIEE, DSENDEFILI DSENDEFILIEE, NMMUNICIPIO AS NMMUNICIFILEE, NRTELEFILI AS NRTELEFILIEE, DSEMAILFILI AS DSEMAILFILIEE
                FROM
                  ENDEFILI  INNER JOIN MUNICIPIO ON ENDEFILI.CDPAIS       = MUNICIPIO.CDPAIS
                                                AND ENDEFILI.SGESTADO     = MUNICIPIO.SGESTADO
                                                AND ENDEFILI.CDMUNICIPIO  = MUNICIPIO.CDMUNICIPIO
                WHERE
                  ENDEFILI.IDTPENDEFILI = 'T'),
        CC AS ( SELECT
                  ENDEFILI.CDFILIAL, SUBSTR(REPLACE(ENDEFILI.NRCEPFILI, '-', ''),0,5)||'-'||SUBSTR(REPLACE(ENDEFILI.NRCEPFILI, '-', ''),6,3) NRCEPFILICC, ENDEFILI.SGESTADO AS SGESTADOFILCC,
                  ENDEFILI.NMBAIRFILI NMBAIRFILICC, DSENDEFILI DSENDEFILICC, NMMUNICIPIO AS NMMUNICIFILCC
                FROM
                  ENDEFILI  INNER JOIN MUNICIPIO ON ENDEFILI.CDPAIS       = MUNICIPIO.CDPAIS
                                                AND ENDEFILI.SGESTADO     = MUNICIPIO.SGESTADO
                                                AND ENDEFILI.CDMUNICIPIO  = MUNICIPIO.CDMUNICIPIO
                WHERE
                  ENDEFILI.IDTPENDEFILI = 'C'),
        FP AS ( SELECT
                  CDFORMPGTO, NMFORMPGTO
                FROM
                  FORMPGTO)

        SELECT
          AF.NRSEQAPURAF,  AF.CDFILDEST,       AF.NMFILIAL,      AF.CDFILLANC,     AF.NRAUTOFORN,    AF.CDOPERADOR,
          AF.CDFORNECED,   AF.VRTOTALAF,       AF.DTAUTOFORN,    AF.IDTIPOEMITAF,  AF.NMEMPRESA,     AF.SGESTADOEMPR,
          AF.NRCEPEMPR,    AF.DSENDEEMPR,      AF.NMMUNIEMPR,    AF.IDTPIJUREMPR,  AF.NRINSJUREMPR,  AF.NMBAIREMPR,
          AF.NMFILIDEST,   AF.NRINSJURFILI,    AF.IDTPIJURFILI,  AF.NMRAZSOCFILI,  AF.DSPERIENTFIL,  AF.OBSERVACAO,
          AF.CDINSCESTA,   AF.NRINSCESTAEMPR,  AF.CDFORMPGTO,    AF.IDTPFORPGTAF,  AF.NRDIAPGFIXAF,  AF.NRPARCPGTOAF,
          AF.IDSITUATUAAF, AF.IDIMAUTOFORN,    AF.IDTIPOFRETAF,  AF.IDAUTOFORNEX,  AF.IDTIPOLANCAF,  AF.IDAFFORALIM,
          AF.IDBAIXAAF,    FN.IDTPIJURFORN,    FN.NRINSJURFORN,  FN.NMRAZSOCFORN,  FN.NMFANTFORN,    FN.DSENDEFORN,
          FN.NMCONTFORN,   FN.NRTELEFORN1,     FN.DSEMAILCOT,    EC.IDTPIJURCLIE,  EC.NRINSJURCLIE,  EC.NMRAZSOCCLIE,
          EC.DSENDECLIE,   EC.NMBAIRCLIE,      EC.SGESTADOCLIE,  EC.NRCEPCLIE,     EC.NRINSESTCLIE,  EC.NMMUNICLIE,
          CF.CDCLIENTE,    OP.NMOPERADOR,      EF.NMMUNICIFIL,   EF.DSENDEFILI,    EF.NMBAIRFILI,    EF.SGESTADOFIL,
          EF.NRCEPFILI,    IT.DTPROGENTAF,     IT.QTPROGENTAF,   IT.VRPREUNIAF,    IT.VALTOTAL,      IT.CDPRODUTO,
          IT.CDARVPROD,    IT.NMPRODUTO,       IT.CDMARCA,       IT.NMMARCA,       IT.NMMARCA_SEG,   IT.TXOBSITMAF,
          IT.NMSEGMARCA,   FP.NMFORMPGTO,      AF.NMREPRINSEST,  AF.DSENDEIEST,    AF.NRINSJURIEST,  AF.IDTPIJURIEST,
          AF.NMBAIRIEST,   AF.NRCEPIEST,       AF.CDMUNICIPIOEST,AF.NMMUNICIPIOEST,AF.SGESTADOEST,   EE.NRCEPFILIEE,
          EE.SGESTADOFILEE,EE.NMBAIRFILIEE,    EE.DSENDEFILIEE,  EE.NMMUNICIFILEE, CC.NRCEPFILICC,   CC.SGESTADOFILCC,
          CC.NMBAIRFILICC, CC.DSENDEFILICC,    CC.NMMUNICIFILCC, EF.NRTELEFILI,    EF.DSEMAILFILI,   EE.NRTELEFILIEE,
          EE.DSEMAILFILIEE
        FROM
          AF INNER JOIN IT ON IT.CDFILDEST  = AF.CDFILDEST
                          AND IT.CDFILLANC  = AF.CDFILLANC
                          AND IT.NRAUTOFORN = AF.NRAUTOFORN
             INNER JOIN OP ON AF.CDOPERADOR = OP.CDOPERADOR
             INNER JOIN FN ON AF.CDFORNECED = FN.CDFORNECED
              LEFT JOIN CF ON AF.CDFILDEST  = CF.CDFILIAL
              LEFT JOIN EC ON CF.CDCLIENTE  = EC.CDCLIENTE
              LEFT JOIN EF ON AF.CDFILDEST  = EF.CDFILIAL
              LEFT JOIN EE ON AF.CDFILDEST  = EE.CDFILIAL
              LEFT JOIN CC ON AF.CDFILDEST  = CC.CDFILIAL
              LEFT JOIN FP ON AF.CDFORMPGTO = FP.CDFORMPGTO
        ORDER BY AF.CDFILDEST, AF.NRAUTOFORN)
  LOOP
    V_PRAZOPGTAF := '';
    FOR C_PRAZOPGTAF IN (SELECT CONCAT(CONCAT(CONCAT('Prazo (dias): ', NRDIASPGTOAF), CONCAT(' Pencentual: ', VRPERCPGTOAF)), '%   /   ') FORMPGTOF
                           FROM PRAZOPGTAF
                          WHERE CDFILDEST  = C_ITEM.CDFILDEST
                            AND CDFILLANC  = C_ITEM.CDFILLANC
                            AND NRAUTOFORN = C_ITEM.NRAUTOFORN
                          ORDER BY NRDIASPGTOAF)
    LOOP
       IF LENGTH(NVL(V_PRAZOPGTAF, '1')||C_PRAZOPGTAF.FORMPGTOF) < 1100 THEN
          V_PRAZOPGTAF := V_PRAZOPGTAF||C_PRAZOPGTAF.FORMPGTOF;
       ELSE
          EXIT;
       END IF;
    END LOOP;
    IF LENGTH(V_PRAZOPGTAF) > 0 THEN
       V_PRAZOPGTAF := SUBSTR(V_PRAZOPGTAF, 1, LENGTH(V_PRAZOPGTAF)-4);
    END IF;
    BEGIN
      SELECT
        DSOBSFILIAL
      INTO
        V_DSOBSFILIAL
      FROM
        PARCMPSUP
      WHERE
        CDFILIAL = C_ITEM.CDFILDEST AND
        P_IDEXIBEOBSFIL = 'S';
    EXCEPTION
      WHEN NO_DATA_FOUND THEN
        V_DSOBSFILIAL := NULL;
    END;
    
    /*DADOS PPRODUTO POR FORNECEDOR*/
    BEGIN
      SELECT LISTAGG(CDPRODUTOXML || ' / ') WITHIN GROUP (ORDER BY CDPRODUTOXML) AS PRODFORNE
        INTO V_CDPRODUTOXML
        FROM PRODFORNXML
       WHERE CDPRODUTO  = C_ITEM.CDPRODUTO
         AND CDFORNECED = C_ITEM.CDFORNECED;
    EXCEPTION
      WHEN NO_DATA_FOUND THEN
        V_CDPRODUTOXML := '';
    END;
  
    /*DESCRICAO PPRODUTO POR FORNECEDOR*/
    BEGIN
      SELECT DSPRODUTO
        INTO V_DSPRODUTO
        FROM PRODFORNCOMP
       WHERE CDPRODCOMPL  = C_ITEM.CDPRODUTO
         AND CDFORNECED = C_ITEM.CDFORNECED;
    EXCEPTION
      WHEN NO_DATA_FOUND THEN
        V_DSPRODUTO := '';
    END;

    V_NMMUNICIFIL   := '';
    V_DSENDEFILI    := '';
    V_NMBAIRFILI    := '';
    V_SGESTADOFIL   := '';
    V_NRCEPFILI     := '';

    V_IDTPIJUREMPR   := '';
    V_NRINSJUREMPR   := '';
    V_NMEMPRESA      := '';
    V_DSENDEEMPR     := '';
    V_NMBAIREMPR     := '';
    V_SGESTADOEMPR   := '';
    V_NRCEPEMPR      := '';
    V_NMMUNIEMPR     := '';
    V_NRINSCESTAEMPR := '';

    V_IDTPIJURIEST   := '';
    V_NRINSJURIEST   := '';
    V_NMREPRINSEST   := '';
    V_DSENDEIEST     := '';
    V_NMBAIRIEST     := '';
    V_SGESTADOEST    := '';
    V_NRCEPIEST      := '';
    V_NMMUNICIPIOEST := '';
    V_CDINSCESTA     := '';

    V_IDENDFATURAMENTOAF  := '';
    V_IDREPRESENTAFATAF   := '';
    V_IDENDCOBRANCAAF     := '';
    V_IDREPRESENTACOBRAAF := '';

/*********************ALTERACAO PARA HOMOLOGACAO**********************/
    IF LENGTH(C_ITEM.NMMUNICIFILEE||C_ITEM.DSENDEFILIEE||C_ITEM.NMBAIRFILIEE||C_ITEM.SGESTADOFILEE||C_ITEM.NRCEPFILIEE) = 0 THEN
       /*ENDERECO DE PRINCIPAL*/
       V_NMMUNICIFIL   := C_ITEM.NMMUNICIFIL;
       V_DSENDEFILI    := C_ITEM.DSENDEFILI;
       V_NMBAIRFILI    := C_ITEM.NMBAIRFILI;
       V_SGESTADOFIL   := C_ITEM.SGESTADOFIL;
       V_NRCEPFILI     := C_ITEM.NRCEPFILI;
       V_NRTELEFILI    := C_ITEM.NRTELEFILI;
       V_DSEMAILFILI   := C_ITEM.DSEMAILFILI;
    ELSE
       /*ENDERECO DE ENREGA*/
       V_NMMUNICIFIL   := C_ITEM.NMMUNICIFILEE;
       V_DSENDEFILI    := C_ITEM.DSENDEFILIEE;
       V_NMBAIRFILI    := C_ITEM.NMBAIRFILIEE;
       V_SGESTADOFIL   := C_ITEM.SGESTADOFILEE;
       V_NRCEPFILI     := C_ITEM.NRCEPFILIEE;
       V_NRTELEFILI    := C_ITEM.NRTELEFILIEE;   
       V_DSEMAILFILI   := C_ITEM.DSEMAILFILIEE;
    END IF;

    IF C_ITEM.IDTIPOEMITAF = '3' THEN
       /*ENDERECO COBRANCA E FATURAMENTO CLIENTE PADRAO DELPHI*/
       /*ENDERECO DE FATURAMENTO PADRAO DELPHI*/
       V_NMREPRINSEST   := C_ITEM.NMRAZSOCCLIE;
       V_NRINSJURIEST   := C_ITEM.NRINSJURCLIE;
       V_IDTPIJURIEST   := C_ITEM.IDTPIJURCLIE;
       V_DSENDEIEST     := C_ITEM.DSENDECLIE;
       V_NMBAIRIEST     := C_ITEM.NMBAIRCLIE;
       V_SGESTADOEST    := C_ITEM.SGESTADOCLIE;
       V_NRCEPIEST      := C_ITEM.NRCEPCLIE;
       V_NMMUNICIPIOEST := C_ITEM.NMMUNICLIE;
       V_CDINSCESTA     := C_ITEM.NRINSESTCLIE;

       /*ENDERECO DE COBRANCA PADRAO DELPHI*/
       V_IDTPIJUREMPR   := C_ITEM.IDTPIJURCLIE;
       V_NRINSJUREMPR   := C_ITEM.NRINSJURCLIE;
       V_NMEMPRESA      := C_ITEM.NMRAZSOCCLIE;
       V_DSENDEEMPR     := C_ITEM.DSENDECLIE;
       V_NMBAIREMPR     := C_ITEM.NMBAIRCLIE;
       V_SGESTADOEMPR   := C_ITEM.SGESTADOCLIE;
       V_NRCEPEMPR      := C_ITEM.NRCEPCLIE;
       V_NMMUNIEMPR     := C_ITEM.NMMUNICLIE;
       V_NRINSCESTAEMPR := C_ITEM.NRINSESTCLIE;
    ELSE
       /*ENDERECO COBRANCA E FATURAMENTO PADRAO DELPHI*/
       /*ENDERECO DE FATURAMENTO PADRAO DELPHI*/
       V_IDTPIJURIEST   := C_ITEM.IDTPIJURIEST;
       V_NRINSJURIEST   := C_ITEM.NRINSJURIEST;
       V_NMREPRINSEST   := C_ITEM.NMREPRINSEST;
       V_DSENDEIEST     := C_ITEM.DSENDEIEST;
       V_NMBAIRIEST     := C_ITEM.NMBAIRIEST;
       V_SGESTADOEST    := C_ITEM.SGESTADOEST;
       V_NRCEPIEST      := C_ITEM.NRCEPIEST;
       V_NMMUNICIPIOEST := C_ITEM.NMMUNICIPIOEST;
       V_CDINSCESTA     := C_ITEM.CDINSCESTA;

       /*ENDERECO DE COBRANCA PADRAO DELPHI*/
       V_IDTPIJUREMPR   := C_ITEM.IDTPIJUREMPR;
       V_NRINSJUREMPR   := C_ITEM.NRINSJUREMPR;
       V_NMEMPRESA      := C_ITEM.NMEMPRESA;
       V_DSENDEEMPR     := C_ITEM.DSENDEEMPR;
       V_NMBAIREMPR     := C_ITEM.NMBAIREMPR;
       V_SGESTADOEMPR   := C_ITEM.SGESTADOEMPR;
       V_NRCEPEMPR      := C_ITEM.NRCEPEMPR;
       V_NMMUNIEMPR     := C_ITEM.NMMUNIEMPR;
       V_NRINSCESTAEMPR := C_ITEM.NRINSCESTAEMPR;
    END IF;

    FOR C_MODELO IN (SELECT NRENDERAUTOFORNE, CDFILIAL, IDENDENTREGAAF, IDENDFATURAMENTOAF, IDREPRESENTAFATAF, IDENDCOBRANCAAF, IDREPRESENTACOBRAAF
                       FROM ENDERAUTOFORNE) LOOP
       IF C_MODELO.IDENDENTREGAAF = '01' THEN
          /*ENDERECO DE ENREGA*/
          V_NMMUNICIFIL   := C_ITEM.NMMUNICIFILEE;
          V_DSENDEFILI    := C_ITEM.DSENDEFILIEE;
          V_NMBAIRFILI    := C_ITEM.NMBAIRFILIEE;
          V_SGESTADOFIL   := C_ITEM.SGESTADOFILEE;
          V_NRCEPFILI     := C_ITEM.NRCEPFILIEE;
          V_NRTELEFILI    := C_ITEM.NRTELEFILIEE;   
          V_DSEMAILFILI   := C_ITEM.DSEMAILFILIEE;
       ELSIF C_MODELO.IDENDENTREGAAF = '02' THEN
          /*ENDERECO DE PRINCIPAL*/
          V_NMMUNICIFIL   := C_ITEM.NMMUNICIFIL;
          V_DSENDEFILI    := C_ITEM.DSENDEFILI;
          V_NMBAIRFILI    := C_ITEM.NMBAIRFILI;
          V_SGESTADOFIL   := C_ITEM.SGESTADOFIL;
          V_NRCEPFILI     := C_ITEM.NRCEPFILI;
          V_NRTELEFILI    := C_ITEM.NRTELEFILI;   
          V_DSEMAILFILI   := C_ITEM.DSEMAILFILI;
       END IF;

       /*****************************ENDERECO DE FATURAMENTO PADRAO DELPHI***********************************/
       IF C_MODELO.IDENDFATURAMENTOAF = 'NN' THEN
          /*OCULTAR ENDERECO DE FATURAMENTO*/
          V_IDTPIJURIEST   := '';
          V_NRINSJURIEST   := '';
          V_DSENDEIEST     := '';
          V_NMBAIRIEST     := '';
          V_SGESTADOEST    := '';
          V_NRCEPIEST      := '';
          V_NMMUNICIPIOEST := '';
          V_CDINSCESTA     := '';
       ELSIF C_MODELO.IDENDFATURAMENTOAF = 'EP' THEN
          /*ENDERECO DE FATURAMENTO COM DADOS DE ENDERECO PRINCIPAL*/
          V_IDTPIJURIEST   := C_ITEM.IDTPIJURIEST;
          V_NRINSJURIEST   := C_ITEM.NRINSJURIEST;
          V_DSENDEIEST     := C_ITEM.DSENDEIEST;
          V_NMBAIRIEST     := C_ITEM.NMBAIRIEST;
          V_SGESTADOEST    := C_ITEM.SGESTADOEST;
          V_NRCEPIEST      := C_ITEM.NRCEPIEST;
          V_NMMUNICIPIOEST := C_ITEM.NMMUNICIPIOEST;
          V_CDINSCESTA     := C_ITEM.CDINSCESTA;
       ELSIF C_MODELO.IDENDFATURAMENTOAF = 'EE' THEN
          /*ENDERECO DE FATURAMENTO COM DADOS DE ENDERECO DE EMPRESA*/
          V_IDTPIJURIEST   := C_ITEM.IDTPIJUREMPR;
          V_NRINSJURIEST   := C_ITEM.NRINSJUREMPR;
          V_DSENDEIEST     := C_ITEM.DSENDEEMPR;
          V_NMBAIRIEST     := C_ITEM.NMBAIREMPR;
          V_SGESTADOEST    := C_ITEM.SGESTADOEMPR;
          V_NRCEPIEST      := C_ITEM.NRCEPEMPR;
          V_NMMUNICIPIOEST := C_ITEM.NMMUNIEMPR;
          V_CDINSCESTA     := C_ITEM.NRINSCESTAEMPR;
       ELSIF C_MODELO.IDENDFATURAMENTOAF = 'CL' THEN
          /*ENDERECO DE FATURAMENTO COM DADOS DE ENDERECO DE CLIENTE*/
          V_IDTPIJURIEST   := C_ITEM.IDTPIJURCLIE;
          V_NRINSJURIEST   := C_ITEM.NRINSJURCLIE;
          V_DSENDEIEST     := C_ITEM.DSENDECLIE;
          V_NMBAIRIEST     := C_ITEM.NMBAIRCLIE;
          V_SGESTADOEST    := C_ITEM.SGESTADOCLIE;
          V_NRCEPIEST      := C_ITEM.NRCEPCLIE;
          V_NMMUNICIPIOEST := C_ITEM.NMMUNICLIE;
          V_CDINSCESTA     := C_ITEM.NRINSESTCLIE;

       ELSIF C_MODELO.IDENDFATURAMENTOAF = 'IE' THEN
          /*ENDERECO DE FATURAMENTO COM DADOS DE ENDERECO DE INSCRICAO ESTADUAL*/
          V_IDTPIJURIEST   := C_ITEM.IDTPIJURIEST;
          V_NRINSJURIEST   := C_ITEM.NRINSJURIEST;
          V_DSENDEIEST     := C_ITEM.DSENDEIEST;
          V_NMBAIRIEST     := C_ITEM.NMBAIRIEST;
          V_SGESTADOEST    := C_ITEM.SGESTADOEST;
          V_NRCEPIEST      := C_ITEM.NRCEPIEST;
          V_NMMUNICIPIOEST := C_ITEM.NMMUNICIPIOEST;
          V_CDINSCESTA     := C_ITEM.CDINSCESTA;
       END IF;

       /*****************************ENDERECO DE COBRANCA PADRAO DELPHI***********************************/
       IF C_MODELO.IDENDCOBRANCAAF = 'NN' THEN
          /*OCULTAR ENDERECO DE COBRANCA*/
          V_IDTPIJUREMPR   := '';
          V_NRINSJUREMPR   := '';
          V_DSENDEEMPR     := '';
          V_NMBAIREMPR     := '';
          V_SGESTADOEMPR   := '';
          V_NRCEPEMPR      := '';
          V_NMMUNIEMPR     := '';
          V_NRINSCESTAEMPR := '';
       ELSIF C_MODELO.IDENDCOBRANCAAF = 'EP' THEN
          /*ENDERECO DE COBRANCA COM DADOS DE ENDERECO PRINCIPAL*/
          V_IDTPIJUREMPR   := C_ITEM.IDTPIJURFILI;
          V_NRINSJUREMPR   := C_ITEM.NRINSJURFILI;
          V_NMEMPRESA      := C_ITEM.NMFILIAL;
          V_DSENDEEMPR     := C_ITEM.DSENDEFILI;
          V_NMBAIREMPR     := C_ITEM.NMBAIRFILI;
          V_SGESTADOEMPR   := C_ITEM.SGESTADOFIL;
          V_NRCEPEMPR      := C_ITEM.NRCEPFILI;
          V_NMMUNIEMPR     := C_ITEM.NMMUNICIFIL;
          V_NRINSCESTAEMPR := C_ITEM.CDINSCESTA;
       ELSIF C_MODELO.IDENDCOBRANCAAF = 'EC' THEN
          /*ENDERECO DE COBRANCA COM DADOS DE ENDERECO DE COBRANCA*/
          V_IDTPIJUREMPR   := C_ITEM.IDTPIJURFILI;
          V_NRINSJUREMPR   := C_ITEM.NRINSJURFILI;
          V_NMEMPRESA      := C_ITEM.NMFILIAL;
          V_DSENDEEMPR     := C_ITEM.DSENDEFILICC;
          V_NMBAIREMPR     := C_ITEM.NMBAIRFILICC;
          V_SGESTADOEMPR   := C_ITEM.SGESTADOFILCC;
          V_NRCEPEMPR      := C_ITEM.NRCEPFILICC;
          V_NMMUNIEMPR     := C_ITEM.NMMUNICIFILCC;
          V_NRINSCESTAEMPR := C_ITEM.CDINSCESTA;
       ELSIF C_MODELO.IDENDCOBRANCAAF = 'EE' THEN
          /*ENDERECO DE COBRANCA COM DADOS DE ENDERECO DE EMPRESA*/
          V_IDTPIJUREMPR   := C_ITEM.IDTPIJUREMPR;
          V_NRINSJUREMPR   := C_ITEM.NRINSJUREMPR;
          V_NMEMPRESA      := C_ITEM.NMEMPRESA;
          V_DSENDEEMPR     := C_ITEM.DSENDEEMPR;
          V_NMBAIREMPR     := C_ITEM.NMBAIREMPR;
          V_SGESTADOEMPR   := C_ITEM.SGESTADOEMPR;
          V_NRCEPEMPR      := C_ITEM.NRCEPEMPR;
          V_NMMUNIEMPR     := C_ITEM.NMMUNIEMPR;
          V_NRINSCESTAEMPR := C_ITEM.NRINSCESTAEMPR;
       ELSIF C_MODELO.IDENDCOBRANCAAF = 'CL' THEN
          /*ENDERECO DE COBRANCA COM DADOS DE ENDERECO DE CLIENTE*/
          V_IDTPIJUREMPR   := C_ITEM.IDTPIJURCLIE;
          V_NRINSJUREMPR   := C_ITEM.NRINSJURCLIE;
          V_NMEMPRESA      := C_ITEM.NMRAZSOCCLIE;
          V_DSENDEEMPR     := C_ITEM.DSENDECLIE;
          V_NMBAIREMPR     := C_ITEM.NMBAIRCLIE;
          V_SGESTADOEMPR   := C_ITEM.SGESTADOCLIE;
          V_NRCEPEMPR      := C_ITEM.NRCEPCLIE;
          V_NMMUNIEMPR     := C_ITEM.NMMUNICLIE;
          V_NRINSCESTAEMPR := C_ITEM.NRINSESTCLIE;

       ELSIF C_MODELO.IDENDCOBRANCAAF = 'IE' THEN
          /*ENDERECO DE COBRANCA COM DADOS DE ENDERECO DE INSCRICAO ESTADUAL*/
          V_NMEMPRESA      := C_ITEM.NMREPRINSEST;
          V_IDTPIJUREMPR   := C_ITEM.IDTPIJURIEST;
          V_NRINSJUREMPR   := C_ITEM.NRINSJURIEST;
          V_DSENDEEMPR     := C_ITEM.DSENDEIEST;
          V_NMBAIREMPR     := C_ITEM.NMBAIRIEST;
          V_SGESTADOEMPR   := C_ITEM.SGESTADOEST;
          V_NRCEPEMPR      := C_ITEM.NRCEPIEST;
          V_NMMUNIEMPR     := C_ITEM.NMMUNICIPIOEST;
          V_NRINSCESTAEMPR := C_ITEM.CDINSCESTA;
       END IF;

       /*****************************DESCRICAO DO RESPONSAVEL PELO FATURAMENTO PADRAO DELPHI***********************************/
       IF C_MODELO.IDREPRESENTAFATAF = 'NN' THEN
          /*OCULTAR DESCRICAO DO RESPONSAVEL PELO FATURAMENTO*/
          V_NMREPRINSEST   := '';
       ELSIF C_MODELO.IDREPRESENTAFATAF = 'NF' THEN
          /*DESCRICAO DO RESPONSAVEL PELO FATURAMENTO COM DADOS DO NOME DA FILIAL*/
          V_NMREPRINSEST   := C_ITEM.NMFILIAL;
       ELSIF C_MODELO.IDREPRESENTAFATAF = 'RF' THEN
          /*DESCRICAO DO RESPONSAVEL PELO FATURAMENTO COM DADOS DA RAZAO SOCIAL DA FILIAL*/
          V_NMREPRINSEST   := C_ITEM.NMRAZSOCFILI;
       ELSIF C_MODELO.IDREPRESENTAFATAF = 'EP' THEN
          /*DESCRICAO DO RESPONSAVEL PELO FATURAMENTO COM DADOS DO REPRESENTANTE LEGAL DA FILIAL*/
          V_NMREPRINSEST   := C_ITEM.NMREPRINSEST;
       ELSIF C_MODELO.IDREPRESENTAFATAF = 'CL' THEN
          /*DESCRICAO DO RESPONSAVEL PELO FATURAMENTO COM DADOS DE ENDERECO DE CLIENTE*/
          V_NMREPRINSEST   := C_ITEM.NMRAZSOCCLIE;
       ELSIF C_MODELO.IDREPRESENTAFATAF = 'EE' THEN
          /*DESCRICAO DO RESPONSAVEL PELO FATURAMENTO COM DADOS DE ENDERECO DE EMPRESA*/
          V_NMREPRINSEST   := C_ITEM.NMEMPRESA;
       END IF;

       /*****************************DESCRICAO DO RESPONSAVEL PELA COBRANCA PADRAO DELPHI***********************************/
       IF C_MODELO.IDREPRESENTACOBRAAF  = 'NN' THEN
          /*OCULTAR DESCRICAO DO RESPONSAVEL PELA COBRANCA*/
          V_NMEMPRESA   := '';
       ELSIF C_MODELO.IDREPRESENTACOBRAAF  = 'NF' THEN
          /*DESCRICAO DO RESPONSAVEL PELA COBRANCA COM DADOS DO NOME DA FILIAL*/
          V_NMEMPRESA   := C_ITEM.NMFILIAL;
       ELSIF C_MODELO.IDREPRESENTACOBRAAF  = 'RF' THEN
          /*DESCRICAO DO RESPONSAVEL PELA COBRANCA COM DADOS DA RAZAO SOCIAL DA FILIAL*/
          V_NMEMPRESA   := C_ITEM.NMRAZSOCFILI;
       ELSIF C_MODELO.IDREPRESENTACOBRAAF  = 'EP' THEN
          /*DESCRICAO DO RESPONSAVEL PELA COBRANCA COM DADOS DO REPRESENTANTE LEGAL DA FILIAL*/
          V_NMEMPRESA   := C_ITEM.NMREPRINSEST;
       ELSIF C_MODELO.IDREPRESENTACOBRAAF  = 'CL' THEN
          /*DESCRICAO DO RESPONSAVEL PELA COBRANCA COM DADOS DE ENDERECO DE CLIENTE*/
          V_NMEMPRESA   := C_ITEM.NMRAZSOCCLIE;
       ELSIF C_MODELO.IDREPRESENTACOBRAAF  = 'EE' THEN
          /*DESCRICAO DO RESPONSAVEL PELA COBRANCA COM DADOS DE ENDERECO DE EMPRESA*/
          V_NMEMPRESA   := C_ITEM.NMEMPRESA;
       END IF;

       V_IDENDFATURAMENTOAF  := C_MODELO.IDENDFATURAMENTOAF;
       V_IDREPRESENTAFATAF   := C_MODELO.IDREPRESENTAFATAF;
       V_IDENDCOBRANCAAF     := C_MODELO.IDENDCOBRANCAAF;
       V_IDREPRESENTACOBRAAF := C_MODELO.IDREPRESENTACOBRAAF;

    END LOOP;
    L_RELATORIO_AF_EMAIL_TYPE := RELATORIO_AF_EMAIL_TYPE
      (
        C_ITEM.NRSEQAPURAF,    C_ITEM.CDFILDEST,       C_ITEM.NMFILIAL,      C_ITEM.CDFILLANC,     C_ITEM.NRAUTOFORN,    C_ITEM.CDOPERADOR,
        C_ITEM.CDFORNECED,     C_ITEM.VRTOTALAF,       C_ITEM.DTAUTOFORN,    C_ITEM.IDTIPOEMITAF,  V_NMEMPRESA,          V_SGESTADOEMPR,
        V_NRCEPEMPR,           V_DSENDEEMPR,           V_NMMUNIEMPR,         V_IDTPIJUREMPR,       V_NRINSJUREMPR,       V_NMBAIREMPR,
        C_ITEM.NMFILIDEST,     C_ITEM.NRINSJURFILI,    C_ITEM.IDTPIJURFILI,  C_ITEM.NMRAZSOCFILI,  C_ITEM.DSPERIENTFIL,  C_ITEM.OBSERVACAO,
        V_CDINSCESTA,          V_NRINSCESTAEMPR,       C_ITEM.CDFORMPGTO,    C_ITEM.IDTPFORPGTAF,  C_ITEM.NRDIAPGFIXAF,  C_ITEM.NRPARCPGTOAF,
        C_ITEM.IDSITUATUAAF,   C_ITEM.IDIMAUTOFORN,    C_ITEM.IDTIPOFRETAF,  C_ITEM.IDAUTOFORNEX,  C_ITEM.IDTIPOLANCAF,  C_ITEM.IDAFFORALIM,
        C_ITEM.IDBAIXAAF,      C_ITEM.IDTPIJURFORN,    C_ITEM.NRINSJURFORN,  C_ITEM.NMRAZSOCFORN,  C_ITEM.NMFANTFORN,    C_ITEM.DSENDEFORN,
        C_ITEM.NMCONTFORN,     C_ITEM.NRTELEFORN1,     C_ITEM.DSEMAILCOT,    V_IDTPIJURCLIE,       V_NRINSJURCLIE,       V_NMRAZSOCCLIE,
        V_DSENDECLIE,          V_NMBAIRCLIE,           V_SGESTADOCLIE,       V_NRCEPCLIE,          V_NRINSESTCLIE,       V_NMMUNICLIE,
        C_ITEM.CDCLIENTE,      C_ITEM.NMOPERADOR,      V_NMMUNICIFIL,        V_DSENDEFILI,         V_NMBAIRFILI,         V_SGESTADOFIL,
        V_NRCEPFILI,           V_NRTELEFILI,           V_DSEMAILFILI,        C_ITEM.DTPROGENTAF,   C_ITEM.CDPRODUTO,     C_ITEM.QTPROGENTAF,   
        C_ITEM.VRPREUNIAF,     C_ITEM.VALTOTAL,        C_ITEM.CDARVPROD,     C_ITEM.NMPRODUTO,     C_ITEM.CDMARCA,       C_ITEM.NMMARCA,       
        C_ITEM.NMMARCA_SEG,    C_ITEM.NMSEGMARCA,      C_ITEM.TXOBSITMAF,    V_PRAZOPGTAF,         C_ITEM.NMFORMPGTO,    V_DSOBSFILIAL,        
        P_IDEXIBEOBSFIL,       V_NMREPRINSEST,         V_NRINSJURIEST,       V_IDTPIJURIEST,       V_DSENDEIEST,         V_NMBAIRIEST,         
        V_SGESTADOEST,         V_NRCEPIEST,            V_NMMUNICIPIOEST,     V_IDENDFATURAMENTOAF, V_IDREPRESENTAFATAF,  V_IDENDCOBRANCAAF,    
        V_IDREPRESENTACOBRAAF, V_CDPRODUTOXML,         V_DSPRODUTO 
      );
    PIPE ROW (L_RELATORIO_AF_EMAIL_TYPE);
  END LOOP;
  RETURN;
END RELATORIO_AF_EMAIL;
/