CREATE OR REPLACE VIEW COMPARA_COMPRA AS 
  SELECT
  CDFILIAL,
  DTDATA,
  CDPRODUTO,
  SUM(QTAF)       SOMA_QTAF,
  SUM(VRAF)       SOMA_VRAF,
  SUM(QTNF)       SOMA_QTNF,
  SUM(VRNF)       SOMA_VRNF,
  SUM(QTCONSUMO)  SOMA_QTCONSUMO,
  SUM(VRCONSUMO)  SOMA_VRCONSUMO,
  SUM(QTSOLICITA) S0MA_QTSOLICITA,
  SUM(QTFATURAM)  SOMA_QTFATURAM,
  SUM(VRFATURAM)  SOMA_VRFATURAM
FROM
  (
  SELECT
    CDFILDEST        CDFILIAL,
    DTPROGENTAF      DTDATA,
    CDPRODUTO        CDPRODUTO,
    SUM(QTPROGENTAF) QTAF,
    SUM(VRPRECCOTAF) VRAF,
    0                QTNF,
    0                VRNF,
    0                QTCONSUMO,
    0                VRCONSUMO,
    0                QTSOLICITA,
    0                QTFATURAM,
    0                VRFATURAM
  FROM
    ITEMAUTF
  GROUP BY
    CDFILDEST,
    DTPROGENTAF,
    CDPRODUTO
  UNION
  SELECT
    DOC.CDFILIRECE   CDFILIAL,
    DOC.DTENTRSAID   DTDATA,
    ID.CDPRODUTO     CDPRODUTO,
    0                QTAF,
    0                VRAF,
    SUM(QTITEMPROD)  QTNF,
    SUM(VRTOTAITEM)  VRNF,
    0                QTCONSUMO,
    0                VRCONSUMO,
    0                QTSOLICITA,
    0                QTFATURAM,
    0                VRFATURAM
  FROM
    ITEMPRODUTO ID, NOTAFISCAL DOC
  WHERE
    ID.CDFILIAL      = DOC.CDFILIAL   AND
    ID.NRLANCTONF    = DOC.NRLANCTONF AND
    DOC.IDENTRSAIDOP = 'E'            AND
    DOC.CDTIPOOPER IN ('01','03','05','08','10','11','12')
  GROUP BY
    CDFILIRECE,
    DTENTRSAID,
    CDPRODUTO
  UNION
  SELECT
    CDFILIAL         CDFILIAL,
    DTRETICONS       DTDATA,
    CDPRODRCONS      CDPRODUTO,
    0                QTAF,
    0                VRAF,
    0                QTNF,
    0                VRNF,
    SUM(QTRETICONS)  QTCONSUMO,
    SUM(VRRETICONS)  VRCONSUMO,
    0                QTSOLICITA,
    0                QTFATURAM,
    0                VRFATURAM
  FROM
    RETIRADA_CONS
  GROUP BY
    CDFILIAL,
    DTRETICONS,
    CDPRODRCONS
  UNION
  SELECT
    CDFILSOLI        CDFILIAL,
    DTPROGENTR       DTDATA,
    CDPRODUTO        CDPRODUTO,
    0                QTAF,
    0                VRAF,
    0                QTNF,
    0                VRNF,
    0                QTCONSUMO,
    0                VRCONSUMO,
    SUM(QTSOLIPROD)  QTSOLICITA,
    0                QTFATURAM,
    0                VRFATURAM
  FROM
    ITEMSOLI
  GROUP BY
    CDFILSOLI,
    DTPROGENTR,
    CDPRODUTO
  UNION
  SELECT
    DOC.CDFILIEMIT  CDFILIAL,
    DOC.DTEMISSAO   DTDATA,
    ID.CDPRODUTO    CDPRODUTO,
    0                QTAF,
    0                VRAF,
    0                QTNF,
    0                VRNF,
    0                QTCONSUMO,
    0                VRCONSUMO,
    0                QTSOLICITA,
    SUM(QTITEMPROD)  QTFATURA,
    SUM(VRTOTAITEM)  VRFATURA
  FROM
    ITEMPRODUTO ID, NOTAFISCAL DOC
  WHERE
    ID.CDFILIAL      = DOC.CDFILIAL   AND
    ID.NRLANCTONF    = DOC.NRLANCTONF AND
    DOC.IDENTRSAIDOP = 'S'            AND
    DOC.CDTIPOOPER   IN ('01','03','05','10')
  GROUP BY
    CDFILIEMIT,
    DTEMISSAO,
    CDPRODUTO
  )
GROUP BY
  CDFILIAL,
  DTDATA,
  CDPRODUTO
/