Advertisement
Guest User

Untitled

a guest
Oct 11th, 2018
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PL/SQL 38.67 KB | None | 0 0
  1. SELECT NRO_EMPRESA            AS NRO_EMPRESA ,
  2.   UPPER(RM_CHAPA_FUNCIONARIO) AS RM_CHAPA_FUNCIONARIO ,
  3.   NRO_USUARIO                 AS NRO_USUARIO ,
  4.   (SELECT UPPER(P.DESC_PERFIL_USUARIO)
  5.   FROM MV_PERFIL_USUARIO P
  6.   WHERE P.NRO_PERFIL_USUARIO = B.NRO_PERFIL_USUARIO
  7.   )
  8.   || ' - '
  9.   || UPPER(NOME_USUARIO)           AS NOME_USUARIO ,
  10.   UPPER(COD_NRO_LOJA)              AS COD_NRO_LOJA ,
  11.   UPPER(DESC_LOJA)                 AS DESC_LOJA ,
  12.   NRO_LOJA_PEDIDO                  AS NRO_LOJA_PEDIDO ,
  13.   NRO_PERFIL_USUARIO               AS NRO_PERFIL_USUARIO ,
  14.   NRO_DEPTO_TIPO_SERVICO           AS NRO_DEPTO_TIPO_SERVICO ,
  15.   UPPER(DESC_DEPTO_TIPO_SERVICO)   AS DESC_DEPTO_TIPO_SERVICO ,
  16.   UPPER(TIPO_COMISSAO)             AS TIPO_COMISSAO ,
  17.   FLAG_TIPO_VENDA,
  18.   SUM(QTDE_PEDIDA_PRODUTO_SERVICO) AS QTDE_PEDIDA_PRODUTO_SERVICO ,
  19.   SUM(VR_UNITARIO_PRODUTO_SERVICO) AS VR_UNITARIO_PRODUTO_SERVICO ,
  20.   SUM(VR_TOTAL_VENDA)              AS VR_TOTAL_VENDA ,
  21.   SUM(VR_CANCELADO)                AS VR_CANCELADO ,
  22.   SUM(VR_VENDIDO)                  AS VR_VENDIDO ,
  23.   SUM(b.VR_COMISSAO_PRODUTO_SERVICO) AS VR_COMISSAO_PRODUTO_SERVICO
  24.   /*    , SUM(VR_DSR_PRODUTO_SERVICO) AS VR_DSR_PRODUTO_SERVICO */
  25.   ,
  26.   SUM(VR_TROCA) AS VR_TROCA
  27.   /*  , DECODE(SUM(VR_TOTAL_VENDA),0,0,ROUND(((SUM(VR_COMISSAO_PRODUTO_SERVICO) / (SUM(VR_TOTAL_VENDA))) * 100),2)) AS PERCENTUAL */
  28.   ,
  29.   DECODE(SUM(VR_TOTAL_VENDA), 0,0, DECODE(SUM(PERC_COMISSAO_PRODUTO_SERVICO), 0, 0, ROUND(((SUM(VR_COMISSAO_PRODUTO_SERVICO) / (SUM(VR_TOTAL_VENDA))) * 100),2))) AS PERCENTUAL ,
  30.   NULL                                                                                                                                                            AS VR_DSR_PRODUTO_SERVICO,
  31.   SUM(VR_UNITARIO_PRODUTO_SERVICONF) AS VR_UNITARIO_PRODUTO_SERVICONF,
  32.   SUM(SERVICO_TRIBUTADO_PRODUTO) AS SERVICO_TRIBUTADO_PRODUTO,
  33.   SUM(NVL(CASE
  34.        WHEN TIPO_COMISSAO = 'PROD' THEN
  35.             (VR_UNITARIO_PRODUTO_SERVICONF - (VR_UNITARIO_PRODUTO_SERVICO
  36.             +
  37.             CASE WHEN(VR_UNITARIO_PRODUTO_SERVICONF - VR_UNITARIO_PRODUTO_SERVICO) <> 0 THEN
  38.  
  39.               NVL((SELECT SUM(IPS.VR_FATURAMENTO_SERVICO)
  40.               FROM MV_ITEM_PEDIDO_SERVICO IPS
  41.                 INNER JOIN MV_SERVICO SV ON SV.NRO_SERVICO = IPS.NRO_SERVICO
  42.               WHERE IPS.NRO_PEDIDO = B.NRO_PEDIDO
  43.                   AND IPS.NRO_LOJA = B.NRO_LOJA_PEDIDO
  44.                   AND IPS.NRO_ITEM_PEDIDO_PRODUTO = B.NRO_ITEM_PEDIDO_PRODUTO
  45.                   AND SV.FLAG_SERVICO_TRIBUTA_PRODUTO = 1),0)
  46.             ELSE 0 END
  47.                   ))
  48.         WHEN B.NRO_DEPTO_TIPO_SERVICO = 32 THEN
  49.               ROUND(    --VR_UNITARIO_PRODUTO_SERVICO - (VR_UNITARIO_PRODUTO_SERVICO)
  50.               (SELECT SUM(IPS.VR_FATURAMENTO_SERVICO - IPS.VR_UNITARIO_SERVICO)
  51.               FROM MV_ITEM_PEDIDO_SERVICO IPS
  52.                 INNER JOIN MV_SERVICO SV ON SV.NRO_SERVICO = IPS.NRO_SERVICO
  53.               WHERE IPS.NRO_PEDIDO = B.NRO_PEDIDO
  54.                   AND IPS.NRO_LOJA = B.NRO_LOJA_PEDIDO
  55.                   AND IPS.NRO_ITEM_PEDIDO_PRODUTO = B.NRO_ITEM_PEDIDO_PRODUTO
  56.                   AND SV.FLAG_SERVICO_TRIBUTA_PRODUTO = 1)
  57.  
  58.                  ,2 )
  59.      END,0)  * DECODE(B.FLAG_TIPO_VENDA,'C',-1,1) )  AS VR_REVER
  60. FROM
  61.   (SELECT A.NRO_EMPRESA AS NRO_EMPRESA
  62.     /*   , CC.DATA_REF_INICIAL AS DATA_REF_INICIAL */
  63.     /*   , CC.DATA_REF_FINAL AS DATA_REF_FINAL */
  64.     ,
  65.     A.RM_CHAPA_FUNCIONARIO AS RM_CHAPA_FUNCIONARIO ,
  66.     A.NRO_USUARIO          AS NRO_USUARIO ,
  67.     UPPER(A.NOME_USUARIO)  AS NOME_USUARIO ,
  68.     UPPER(A.COD_NRO_LOJA)  AS COD_NRO_LOJA ,
  69.     UPPER(A.DESC_LOJA)     AS DESC_LOJA ,
  70.     A.NRO_LOJA_PEDIDO      AS NRO_LOJA_PEDIDO ,
  71.     TO_CHAR(A.NRO_PEDIDO) NRO_PEDIDO ,
  72.     NRO_ITEM_PEDIDO_PRODUTO ,
  73.     NRO_PERFIL_USUARIO ,
  74.     NRO_PRODUTO ,
  75.     COD_PRODUTO_QTDE_MESES_SERVICO ,
  76.     DESC_PRODUTO ,
  77.     COD_SITUACAO_PRODUTO ,
  78.     NRO_PROMOCAO ,
  79.     NRO_DEPTO_TIPO_SERVICO ,
  80.     DESC_DEPTO_TIPO_SERVICO ,
  81.     QTDE_PEDIDA_PRODUTO_SERVICO ,
  82.     VR_UNITARIO_PRODUTO_SERVICO ,
  83.     (DECODE(A.FLAG_TIPO_VENDA,'V',((A.QTDE_PEDIDA_PRODUTO_SERVICO * A.VR_UNITARIO_PRODUTO_SERVICO) - A.VR_TROCA),0) - DECODE(A.FLAG_TIPO_VENDA,'C',((A.QTDE_PEDIDA_PRODUTO_SERVICO * A.VR_UNITARIO_PRODUTO_SERVICO) - A.VR_TROCA),0)) VR_TOTAL_VENDA ,
  84.     DECODE(A.FLAG_TIPO_VENDA,'C',(A.QTDE_PEDIDA_PRODUTO_SERVICO   * A.VR_UNITARIO_PRODUTO_SERVICO),0) AS VR_CANCELADO ,
  85.     DECODE(A.FLAG_TIPO_VENDA,'V',(A.QTDE_PEDIDA_PRODUTO_SERVICO   * A.VR_UNITARIO_PRODUTO_SERVICO),0) AS VR_VENDIDO ,
  86.     PERC_COMISSAO_PRODUTO_SERVICO ,
  87.     DECODE(A.FLAG_TIPO_VENDA,'C',DECODE(SIGN(VR_COMISSAO_PRODUTO_SERVICO),-1,VR_COMISSAO_PRODUTO_SERVICO, VR_COMISSAO_PRODUTO_SERVICO * (-1)),VR_COMISSAO_PRODUTO_SERVICO) VR_COMISSAO_PRODUTO_SERVICO ,
  88.     FLAG_TIPO_VENDA ,
  89.     VR_TROCA ,
  90.     TIPO_COMISSAO,
  91.     CASE WHEN TIPO_COMISSAO = 'PROD' THEN
  92.     (NVL((SELECT SUM( IPS.VR_FATURAMENTO_SERVICO)
  93.           FROM MV_ITEM_PEDIDO_SERVICO IPS
  94.             INNER JOIN MV_SERVICO SV ON SV.NRO_SERVICO = IPS.NRO_SERVICO
  95.           WHERE IPS.NRO_PEDIDO = A.NRO_PEDIDO
  96.               AND IPS.NRO_LOJA = A.NRO_LOJA_PEDIDO
  97.               AND IPS.NRO_ITEM_PEDIDO_PRODUTO = A.NRO_ITEM_PEDIDO_PRODUTO
  98.               AND SV.FLAG_SERVICO_TRIBUTA_PRODUTO = 1),0))
  99.     ELSE 0 END * DECODE(A.FLAG_TIPO_VENDA,'C',-1,1)  AS SERVICO_TRIBUTADO_PRODUTO,
  100. DECODE(
  101.   (SELECT itn.vr_unitario_item_nf FROM mv_item_nf itn
  102.   INNER JOIN mv_nf nf ON nf.nro_seq_nf   = itn.nro_seq_nf
  103.   AND nf.nro_loja                        = itn.nro_loja WHERE nf.nro_tipo_nf IN (1,5,10,15)
  104.   AND itn.nro_item_pedido_produto        = A.NRO_ITEM_PEDIDO_PRODUTO
  105.   AND itn.nro_loja_item_pedido_produto   = A.nro_loja_pedido
  106.   AND itn.nro_pedido                     = a.nro_pedido
  107.   AND A.NRO_PRODUTO                     IS NOT NULL
  108.   AND NVL(nf.ind_nf_renovada,0)          = 0
  109.   AND NVL(nf.flag_situacao_docto_nf,'A') = 'A'
  110.   AND ROWNUM                             = 1
  111.   ) ,NULL ,VR_UNITARIO_PRODUTO_SERVICO ,
  112.   (SELECT itn.vr_unitario_item_nf
  113.   FROM mv_item_nf itn
  114.   INNER JOIN mv_nf nf
  115.   ON nf.nro_seq_nf                       = itn.nro_seq_nf
  116.   AND nf.nro_loja                        = itn.nro_loja
  117.   WHERE nf.nro_tipo_nf                  IN (1,5,10,15)
  118.   AND itn.nro_item_pedido_produto        = A.NRO_ITEM_PEDIDO_PRODUTO
  119.   AND itn.nro_loja_item_pedido_produto   = A.nro_loja_pedido
  120.   AND itn.nro_pedido                     = A.nro_pedido
  121.   AND A.NRO_PRODUTO                     IS NOT NULL
  122.   AND NVL(nf.ind_nf_renovada,0)          = 0
  123.   AND NVL(nf.flag_situacao_docto_nf,'A') = 'A'
  124.   AND ROWNUM                             = 1
  125.   ) )  AS VR_UNITARIO_PRODUTO_SERVICONF
  126.  
  127.  
  128.   FROM
  129.     (
  130.     /* PRODUTOS */
  131.     SELECT 'V' FLAG_TIPO_VENDA ,
  132.       P.NRO_LOJA AS NRO_LOJA_PEDIDO ,
  133.       P.NRO_PEDIDO ,
  134.       I.NRO_ITEM_PEDIDO_PRODUTO ,
  135.       I.NRO_USUARIO ,
  136.       DECODE(I.NRO_PERFIL_USUARIO_VENDA, NULL, U.nro_perfil_usuario, I.NRO_PERFIL_USUARIO_VENDA) NRO_PERFIL_USUARIO ,
  137.       U.RM_CHAPA_FUNCIONARIO AS RM_CHAPA_FUNCIONARIO ,
  138.       U.NOME_USUARIO         AS NOME_USUARIO ,
  139.       I.NRO_PRODUTO ,
  140.       I.NRO_DEPTO AS NRO_DEPTO_TIPO_SERVICO ,
  141.       I.NRO_PROMOCAO ,
  142.       P.DT_FATURAMENTO_PEDIDO AS DT_FATURAMENTO_PEDIDO ,
  143.       I.QTDE_PEDIDA_PRODUTO   AS QTDE_PEDIDA_PRODUTO_SERVICO ,
  144.       I.VR_UNITARIO_PRODUTO   AS VR_UNITARIO_PRODUTO_SERVICO ,
  145.       NVL(DECODE(NVL((((NVL(I.PRECO_LISTA_EQUALIZADO,0) * ABS(I.QTDE_PEDIDA_PRODUTO)) - NVL(ABS((I.VR_UNITARIO_PRODUTO*I.QTDE_PEDIDA_PRODUTO)),0))/DECODE(I.PRECO_LISTA_EQUALIZADO * ABS(I.QTDE_PEDIDA_PRODUTO),0,1,I.PRECO_LISTA_EQUALIZADO * ABS(I.QTDE_PEDIDA_PRODUTO)))*100,0) /*PERC_PRECO_LISTA_EQUALIZADO,*/
  146.       ,0,NVL((((NVL(I.PRECO_LISTA,0)                    * ABS(I.QTDE_PEDIDA_PRODUTO)) - NVL(ABS((I.VR_UNITARIO_PRODUTO*I.QTDE_PEDIDA_PRODUTO)),0))/DECODE(I.PRECO_LISTA * ABS(I.QTDE_PEDIDA_PRODUTO),0,1,I.PRECO_LISTA * ABS(I.QTDE_PEDIDA_PRODUTO)))*100,0)                       /*PERC_PRECO_LISTA,*/
  147.       ,NVL((((NVL(I.PRECO_LISTA_EQUALIZADO,0)           * ABS(I.QTDE_PEDIDA_PRODUTO)) - NVL(ABS((I.VR_UNITARIO_PRODUTO*I.QTDE_PEDIDA_PRODUTO)),0))/DECODE(I.PRECO_LISTA_EQUALIZADO * ABS(I.QTDE_PEDIDA_PRODUTO),0,1,I.PRECO_LISTA_EQUALIZADO * ABS(I.QTDE_PEDIDA_PRODUTO)))*100,0) /*PERC_PRECO_LISTA_EQUALIZADO*/
  148.       ),0) PERC_DESCONTO ,
  149.       NVL(I.PRECO_LISTA,0) PRECO_LISTA
  150.       /* , NVL(I.PRECO_LISTA_EQUALIZADO,0) PRECO_LISTA_EQUALIZADO */
  151.       /*   , I.PERC_COMISSAO_VENDEDOR PERC_COMISSAO_PRODUTO */
  152.       /*   , I.COMISSAO_PRODUTO */
  153.       ,
  154.       I.COD_SITUACAO_PRODUTO ,
  155.       L.NRO_EMPRESA ,
  156.       UPPER(L.COD_NRO_LOJA) AS COD_NRO_LOJA ,
  157.       UPPER(L.DESC_LOJA)    AS DESC_LOJA ,
  158.       NVL(I.VR_TROCA_PRODUTO,0) VR_TROCA ,
  159.       (SELECT (NVL(VR_TOTAL_PRODUTOS,0) + NVL(VR_TOTAL_SERVICOS,0) - NVL(VR_TOTAL_DESCONTOS,0)) VR_TOTAL_PEDIDO
  160.       FROM MV_PEDIDO T
  161.       WHERE T.NRO_LOJA = P.NRO_LOJA
  162.       AND T.NRO_PEDIDO = P.NRO_PEDIDO
  163.       ) VR_TOTAL_PEDIDO ,
  164.       CASE I.COD_SITUACAO_PRODUTO
  165.         WHEN 'FL'
  166.         THEN
  167.           (SELECT NRO_TIPO_COMISSAO
  168.           FROM FP_TIPO_COMISSAO
  169.           WHERE NRO_EMPRESA                = L.NRO_EMPRESA
  170.           AND DESC_TIPO_COMISSAO_ABREVIADO = 'FL'
  171.           AND FLAG_ATIVO                   = 'S'
  172.           )
  173.         ELSE
  174.           CASE NVL(I.NRO_PROMOCAO,0)
  175.             WHEN 0
  176.             THEN
  177.               (SELECT NRO_TIPO_COMISSAO
  178.               FROM FP_TIPO_COMISSAO
  179.               WHERE NRO_EMPRESA                = L.NRO_EMPRESA
  180.               AND DESC_TIPO_COMISSAO_ABREVIADO = 'PL'
  181.               AND FLAG_ATIVO                   = 'S'
  182.               )
  183.             ELSE
  184.               (SELECT NRO_TIPO_COMISSAO
  185.               FROM FP_TIPO_COMISSAO
  186.               WHERE NRO_EMPRESA                = L.NRO_EMPRESA
  187.               AND DESC_TIPO_COMISSAO_ABREVIADO = 'LP'
  188.               AND FLAG_ATIVO                   = 'S'
  189.               )
  190.           END
  191.       END NRO_TIPO_COMISSAO ,
  192.       (SELECT DESC_DEPTO FROM MV_DEPTO D WHERE D.NRO_DEPTO = PROD.NRO_DEPTO
  193.       ) AS DESC_DEPTO_TIPO_SERVICO ,
  194.       UPPER(PROD.COD_NRO_PRODUTO
  195.       || '.'
  196.       || PROD.COD_COR_PRODUTO
  197.       || '.'
  198.       || PROD.COD_TIPO_VOLTAGEM) AS COD_PRODUTO_QTDE_MESES_SERVICO ,
  199.       PROD.DESC_PRODUTO ,
  200.       SUBSTR('PROD',1,4) AS TIPO_COMISSAO ,
  201.       I.PERC_COMISSAO    AS PERC_COMISSAO_PRODUTO_SERVICO ,
  202.       I.VALOR_COMISSAO   AS VR_COMISSAO_PRODUTO_SERVICO
  203.     FROM MV_ITEM_PEDIDO_PRODUTO I ,
  204.       MV_PEDIDO P ,
  205.       MV_USUARIO U ,
  206.       MV_LOJA L ,
  207.       MV_PRODUTO PROD
  208.     WHERE P.DT_FATURAMENTO_PEDIDO >= TO_DATE('01/01/2018','DD/MM/YYYY')
  209.     AND P.DT_FATURAMENTO_PEDIDO    < TO_DATE('01/01/2018','DD/MM/YYYY') + 1
  210.     AND P.STS_PEDIDO                                                        IN (40,50,91)
  211.     AND ( 0             IS NULL
  212.     OR P.NRO_LOJA                  = 0)
  213.     AND L.NRO_EMPRESA              = 0
  214.     AND P.NRO_LOJA                 = L.NRO_LOJA
  215.     AND I.NRO_LOJA                 = P.NRO_LOJA
  216.     AND I.NRO_PEDIDO               = P.NRO_PEDIDO
  217.     AND U.NRO_USUARIO              = I.NRO_USUARIO
  218.     AND I.NRO_PRODUTO              = PROD.NRO_PRODUTO
  219.     AND (0           IS NULL
  220.     OR U.NRO_USUARIO               = 0)
  221.     UNION
  222.     /* PRODUTOS CANCELADOS */
  223.     SELECT 'C' FLAG_TIPO_VENDA ,
  224.       P.NRO_LOJA NRO_LOJA_PEDIDO ,
  225.       P.NRO_PEDIDO ,
  226.       I.NRO_ITEM_PEDIDO_PRODUTO ,
  227.       I.NRO_USUARIO ,
  228.       DECODE(I.NRO_PERFIL_USUARIO_VENDA, NULL, U.nro_perfil_usuario, I.NRO_PERFIL_USUARIO_VENDA) NRO_PERFIL_USUARIO ,
  229.       U.RM_CHAPA_FUNCIONARIO AS RM_CHAPA_FUNCIONARIO ,
  230.       U.NOME_USUARIO         AS NOME_USUARIO ,
  231.       I.NRO_PRODUTO ,
  232.       I.NRO_DEPTO AS NRO_DEPTO_TIPO_SERVICO ,
  233.       I.NRO_PROMOCAO ,
  234.       IR.DT_INCLUSAO        AS DT_VENDA ,
  235.       IR.QTDE_DEVOLVIDA     AS QTDE_PEDIDA_PRODUTO_SERVICO ,
  236.       I.VR_UNITARIO_PRODUTO AS VR_UNITARIO_PRODUTO_SERVICO ,
  237.       NVL(DECODE(NVL((((NVL(I.PRECO_LISTA_EQUALIZADO,0) * ABS(-IR.QTDE_DEVOLVIDA)) - NVL(ABS((-I.VR_UNITARIO_PRODUTO*IR.QTDE_DEVOLVIDA)),0))/DECODE(I.PRECO_LISTA_EQUALIZADO * ABS(-IR.QTDE_DEVOLVIDA),0,1,I.PRECO_LISTA_EQUALIZADO * ABS(-IR.QTDE_DEVOLVIDA)))*100,0) /*PERC_PRECO_LISTA_EQUALIZADO*/
  238.       ,0, NVL((((NVL(I.PRECO_LISTA,0)                   * ABS(-IR.QTDE_DEVOLVIDA)) - NVL(ABS((-I.VR_UNITARIO_PRODUTO*IR.QTDE_DEVOLVIDA)),0))/DECODE(I.PRECO_LISTA * ABS(-IR.QTDE_DEVOLVIDA),0,1,I.PRECO_LISTA * ABS(-IR.QTDE_DEVOLVIDA)))*100,0)                       /*PERC_PRECO_LISTA*/
  239.       , NVL((((NVL(I.PRECO_LISTA_EQUALIZADO,0)          * ABS(-IR.QTDE_DEVOLVIDA)) - NVL(ABS((-I.VR_UNITARIO_PRODUTO*IR.QTDE_DEVOLVIDA)),0))/DECODE(I.PRECO_LISTA_EQUALIZADO * ABS(-IR.QTDE_DEVOLVIDA),0,1,I.PRECO_LISTA_EQUALIZADO * ABS(-IR.QTDE_DEVOLVIDA)))*100,0) /*PERC_PRECO_LISTA_EQUALIZADO*/
  240.       ),0) PERC_DESCONTO ,
  241.       NVL(I.PRECO_LISTA,0) PRECO_LISTA
  242.       /*   , NVL(I.PRECO_LISTA_EQUALIZADO,0) PRECO_LISTA_EQUALIZADO */
  243.       /*   , I.PERC_COMISSAO_VENDEDOR PERC_COMISSAO_PRODUTO */
  244.       /*   , I.COMISSAO_PRODUTO*/
  245.       ,
  246.       I.COD_SITUACAO_PRODUTO ,
  247.       L.NRO_EMPRESA ,
  248.       UPPER(L.COD_NRO_LOJA) AS COD_NRO_LOJA ,
  249.       UPPER(L.DESC_LOJA)    AS DESC_LOJA ,
  250.       NVL(I.VR_TROCA_PRODUTO,0) VR_TROCA ,
  251.       (SELECT (NVL(VR_TOTAL_PRODUTOS,0) + NVL(VR_TOTAL_SERVICOS,0) - NVL(VR_TOTAL_DESCONTOS,0)) VR_TOTAL_PEDIDO
  252.       FROM MV_PEDIDO T
  253.       WHERE T.NRO_LOJA = P.NRO_LOJA
  254.       AND T.NRO_PEDIDO = P.NRO_PEDIDO
  255.       ) VR_TOTAL_PEDIDO ,
  256.       CASE I.COD_SITUACAO_PRODUTO
  257.         WHEN 'FL'
  258.         THEN
  259.           (SELECT NRO_TIPO_COMISSAO
  260.           FROM FP_TIPO_COMISSAO
  261.           WHERE NRO_EMPRESA                = L.NRO_EMPRESA
  262.           AND DESC_TIPO_COMISSAO_ABREVIADO = 'FL'
  263.           AND FLAG_ATIVO                   = 'S'
  264.           )
  265.         ELSE
  266.           CASE NVL(I.NRO_PROMOCAO,0)
  267.             WHEN 0
  268.             THEN
  269.               (SELECT NRO_TIPO_COMISSAO
  270.               FROM FP_TIPO_COMISSAO
  271.               WHERE NRO_EMPRESA                = L.NRO_EMPRESA
  272.               AND DESC_TIPO_COMISSAO_ABREVIADO = 'PL'
  273.               AND FLAG_ATIVO                   = 'S'
  274.               )
  275.             ELSE
  276.               (SELECT NRO_TIPO_COMISSAO
  277.               FROM FP_TIPO_COMISSAO
  278.               WHERE NRO_EMPRESA                = L.NRO_EMPRESA
  279.               AND DESC_TIPO_COMISSAO_ABREVIADO = 'LP'
  280.               AND FLAG_ATIVO                   = 'S'
  281.               )
  282.           END
  283.       END NRO_TIPO_COMISSAO ,
  284.       (SELECT DESC_DEPTO FROM MV_DEPTO D WHERE D.NRO_DEPTO = PROD.NRO_DEPTO
  285.       ) AS DESC_DEPTO_TIPO_SERVICO ,
  286.       UPPER(PROD.COD_NRO_PRODUTO
  287.       || '.'
  288.       || PROD.COD_COR_PRODUTO
  289.       || '.'
  290.       || PROD.COD_TIPO_VOLTAGEM) AS COD_PRODUTO_QTDE_MESES_SERVICO ,
  291.       PROD.DESC_PRODUTO
  292.       /*  , PROD.COD_SITUACAO_PRODUTO */
  293.       ,
  294.       SUBSTR('PROD',1,4) AS TIPO_COMISSAO ,
  295.       I.PERC_COMISSAO    AS PERC_COMISSAO_PRODUTO_SERVICO ,
  296.       I.VALOR_COMISSAO   AS VR_COMISSAO_PRODUTO_SERVICO
  297.     FROM MV_ITEM_RECIBO_DEVOLUCAO IR ,
  298.       MV_ITEM_PEDIDO_PRODUTO I ,
  299.       MV_PEDIDO P ,
  300.       MV_USUARIO U ,
  301.       MV_LOJA L ,
  302.       MV_PRODUTO PROD
  303.     WHERE ir.nro_seq_nf IS NULL
  304.     AND IR.DT_INCLUSAO  >= TO_DATE('01/01/2018','DD/MM/YYYY')
  305.     AND IR.DT_INCLUSAO   < TO_DATE('01/01/2018','DD/MM/YYYY') + 1
  306.     AND IR.NRO_PEDIDO_NOVO       IS NULL
  307.     AND IR.IND_UTILIZACAO         = 'S'
  308.     AND ( 0            IS NULL
  309.     OR IR.NRO_LOJA_PEDIDO         = 0 )
  310.     AND L.NRO_EMPRESA             = 0
  311.     AND IR.NRO_LOJA_PEDIDO        = L.NRO_LOJA
  312.     AND I.NRO_LOJA                = IR.NRO_LOJA_PEDIDO
  313.     AND I.NRO_PEDIDO              = IR.NRO_PEDIDO
  314.     AND I.NRO_ITEM_PEDIDO_PRODUTO = IR.NRO_ITEM_PEDIDO_PRODUTO
  315.     AND P.NRO_LOJA                = I.NRO_LOJA
  316.     AND P.NRO_PEDIDO              = I.NRO_PEDIDO
  317.     AND U.NRO_USUARIO             = I.NRO_USUARIO
  318.     AND I.NRO_PRODUTO             = PROD.NRO_PRODUTO
  319.     AND (0          IS NULL
  320.     OR U.NRO_USUARIO              = 0)
  321.     UNION
  322.     /* PRODUTOS COM NF DE DEVOLUCAO */
  323.     SELECT 'C' FLAG_TIPO_VENDA ,
  324.       P.NRO_LOJA NRO_LOJA_PEDIDO ,
  325.       P.NRO_PEDIDO ,
  326.       I.NRO_ITEM_PEDIDO_PRODUTO ,
  327.       I.NRO_USUARIO ,
  328.       DECODE(I.NRO_PERFIL_USUARIO_VENDA, NULL, U.nro_perfil_usuario, I.NRO_PERFIL_USUARIO_VENDA) NRO_PERFIL_USUARIO ,
  329.       U.RM_CHAPA_FUNCIONARIO AS RM_CHAPA_FUNCIONARIO ,
  330.       U.NOME_USUARIO         AS NOME_USUARIO ,
  331.       I.NRO_PRODUTO ,
  332.       I.NRO_DEPTO AS NRO_DEPTO_TIPO_SERVICO ,
  333.       I.NRO_PROMOCAO ,
  334.       IR.DT_INCLUSAO        AS DT_VENDA ,
  335.       IR.QTDE_DEVOLVIDA     AS QTDE_PEDIDA_PRODUTO_SERVICO ,
  336.       I.VR_UNITARIO_PRODUTO AS VR_UNITARIO_PRODUTO_SERVICO ,
  337.       NVL(DECODE(NVL((((NVL(I.PRECO_LISTA_EQUALIZADO,0) * ABS(-IR.QTDE_DEVOLVIDA)) - NVL(ABS((-I.VR_UNITARIO_PRODUTO*IR.QTDE_DEVOLVIDA)),0))/DECODE(I.PRECO_LISTA_EQUALIZADO * ABS(-IR.QTDE_DEVOLVIDA),0,1,I.PRECO_LISTA_EQUALIZADO * ABS(-IR.QTDE_DEVOLVIDA)))*100,0) /*PERC_PRECO_LISTA_EQUALIZADO*/
  338.       ,0, NVL((((NVL(I.PRECO_LISTA,0)                   * ABS(-IR.QTDE_DEVOLVIDA)) - NVL(ABS((-I.VR_UNITARIO_PRODUTO*IR.QTDE_DEVOLVIDA)),0))/DECODE(I.PRECO_LISTA * ABS(-IR.QTDE_DEVOLVIDA),0,1,I.PRECO_LISTA * ABS(-IR.QTDE_DEVOLVIDA)))*100,0)                       /*PERC_PRECO_LISTA*/
  339.       , NVL((((NVL(I.PRECO_LISTA_EQUALIZADO,0)          * ABS(-IR.QTDE_DEVOLVIDA)) - NVL(ABS((-I.VR_UNITARIO_PRODUTO*IR.QTDE_DEVOLVIDA)),0))/DECODE(I.PRECO_LISTA_EQUALIZADO * ABS(-IR.QTDE_DEVOLVIDA),0,1,I.PRECO_LISTA_EQUALIZADO * ABS(-IR.QTDE_DEVOLVIDA)))*100,0) /*PERC_PRECO_LISTA_EQUALIZADO*/
  340.       ),0) PERC_DESCONTO ,
  341.       NVL(I.PRECO_LISTA,0) PRECO_LISTA
  342.       /*   , NVL(I.PRECO_LISTA_EQUALIZADO,0) PRECO_LISTA_EQUALIZADO */
  343.       /*   , I.PERC_COMISSAO_VENDEDOR PERC_COMISSAO_PRODUTO */
  344.       /*   , I.COMISSAO_PRODUTO */
  345.       ,
  346.       I.COD_SITUACAO_PRODUTO ,
  347.       L.NRO_EMPRESA ,
  348.       UPPER(L.COD_NRO_LOJA) AS COD_NRO_LOJA ,
  349.       UPPER(L.DESC_LOJA)    AS DESC_LOJA ,
  350.       NVL(I.VR_TROCA_PRODUTO,0) VR_TROCA ,
  351.       (SELECT (NVL(VR_TOTAL_PRODUTOS,0) + NVL(VR_TOTAL_SERVICOS,0) - NVL(VR_TOTAL_DESCONTOS,0)) VR_TOTAL_PEDIDO
  352.       FROM MV_PEDIDO T
  353.       WHERE T.NRO_LOJA = P.NRO_LOJA
  354.       AND T.NRO_PEDIDO = P.NRO_PEDIDO
  355.       ) VR_TOTAL_PEDIDO ,
  356.       CASE I.COD_SITUACAO_PRODUTO
  357.         WHEN 'FL'
  358.         THEN
  359.           (SELECT NRO_TIPO_COMISSAO
  360.           FROM FP_TIPO_COMISSAO
  361.           WHERE NRO_EMPRESA                = L.NRO_EMPRESA
  362.           AND DESC_TIPO_COMISSAO_ABREVIADO = 'FL'
  363.           AND FLAG_ATIVO                   = 'S'
  364.           )
  365.         ELSE
  366.           CASE NVL(I.NRO_PROMOCAO,0)
  367.             WHEN 0
  368.             THEN
  369.               (SELECT NRO_TIPO_COMISSAO
  370.               FROM FP_TIPO_COMISSAO
  371.               WHERE NRO_EMPRESA                = L.NRO_EMPRESA
  372.               AND DESC_TIPO_COMISSAO_ABREVIADO = 'PL'
  373.               AND FLAG_ATIVO                   = 'S'
  374.               )
  375.             ELSE
  376.               (SELECT NRO_TIPO_COMISSAO
  377.               FROM FP_TIPO_COMISSAO
  378.               WHERE NRO_EMPRESA                = L.NRO_EMPRESA
  379.               AND DESC_TIPO_COMISSAO_ABREVIADO = 'LP'
  380.               AND FLAG_ATIVO                   = 'S'
  381.               )
  382.           END
  383.       END NRO_TIPO_COMISSAO ,
  384.       (SELECT DESC_DEPTO FROM MV_DEPTO D WHERE D.NRO_DEPTO = PROD.NRO_DEPTO
  385.       ) AS DESC_DEPTO_TIPO_SERVICO ,
  386.       UPPER(PROD.COD_NRO_PRODUTO
  387.       || '.'
  388.       || PROD.COD_COR_PRODUTO
  389.       || '.'
  390.       || PROD.COD_TIPO_VOLTAGEM) AS COD_PRODUTO_QTDE_MESES_SERVICO ,
  391.       PROD.DESC_PRODUTO
  392.       /*  , PROD.COD_SITUACAO_PRODUTO*/
  393.       ,
  394.       SUBSTR('PROD',1,4) AS TIPO_COMISSAO ,
  395.       I.PERC_COMISSAO    AS PERC_COMISSAO_PRODUTO_SERVICO ,
  396.       I.VALOR_COMISSAO   AS VR_COMISSAO_PRODUTO_SERVICO
  397.     FROM mv_nf nf,
  398.       MV_ITEM_RECIBO_DEVOLUCAO IR ,
  399.       MV_ITEM_PEDIDO_PRODUTO I ,
  400.       MV_PEDIDO P ,
  401.       MV_USUARIO U ,
  402.       MV_LOJA L ,
  403.       MV_PRODUTO PROD
  404.     WHERE nf.dt_emissao_nf >= TO_DATE('01/01/2018','DD/MM/YYYY')
  405.     AND nf.dt_emissao_nf    < TO_DATE('01/01/2018','DD/MM/YYYY') + 1
  406.     AND nf.nro_tipo_nf                                               IN (22, 23)
  407.     AND ir.nro_seq_nf       = nf.nro_seq_nf
  408.     AND ir.NRO_LOJA_ITEM_NF = nf.nro_loja
  409.     AND IR.NRO_PEDIDO_NOVO       IS NULL
  410.     AND IR.IND_UTILIZACAO         = 'S'
  411.     AND ( 0            IS NULL
  412.     OR IR.NRO_LOJA_PEDIDO         = 0 )
  413.     AND L.NRO_EMPRESA             = 0
  414.     AND IR.NRO_LOJA_PEDIDO        = L.NRO_LOJA
  415.     AND I.NRO_LOJA                = IR.NRO_LOJA_PEDIDO
  416.     AND I.NRO_PEDIDO              = IR.NRO_PEDIDO
  417.     AND I.NRO_ITEM_PEDIDO_PRODUTO = IR.NRO_ITEM_PEDIDO_PRODUTO
  418.     AND P.NRO_LOJA                = I.NRO_LOJA
  419.     AND P.NRO_PEDIDO              = I.NRO_PEDIDO
  420.     AND U.NRO_USUARIO             = I.NRO_USUARIO
  421.     AND I.NRO_PRODUTO             = PROD.NRO_PRODUTO
  422.     AND (0          IS NULL
  423.     OR U.NRO_USUARIO              = 0)
  424.     UNION
  425.     /* ITEM SERVICO */
  426.     SELECT 'V' FLAG_TIPO_VENDA ,
  427.       P.NRO_LOJA AS NRO_LOJA_PEDIDO ,
  428.       P.NRO_PEDIDO ,
  429.       I.NRO_ITEM_PEDIDO_PRODUTO ,
  430.       S.NRO_USUARIO ,
  431.       DECODE(S.NRO_PERFIL_USUARIO_VENDA, NULL, U.nro_perfil_usuario, S.NRO_PERFIL_USUARIO_VENDA) NRO_PERFIL_USUARIO ,
  432.       U.RM_CHAPA_FUNCIONARIO AS RM_CHAPA_FUNCIONARIO ,
  433.       U.NOME_USUARIO         AS NOME_USUARIO ,
  434.       NULL                   AS NRO_PRODUTO /*I.NRO_PRODUTO*/
  435.       ,
  436.       TS.NRO_TIPO_SERVICO     AS NRO_DEPTO_TIPO_SERVICO ,
  437.       NULL                    AS NRO_PROMOCAO ,
  438.       P.DT_FATURAMENTO_PEDIDO AS DT_FATURAMENTO_PEDIDO ,
  439.       I.QTDE_PEDIDA_PRODUTO   AS QTDE_PEDIDA_PRODUTO_SERVICO ,
  440.       S.VR_UNITARIO_SERVICO   AS VR_UNITARIO_PRODUTO_SERVICO ,
  441.       NVL((((NVL(S.PRECO_LISTA,0) * ABS(I.QTDE_PEDIDA_PRODUTO)) - NVL(ABS((S.VR_UNITARIO_SERVICO*I.QTDE_PEDIDA_PRODUTO)),0))/DECODE(S.PRECO_LISTA * ABS(I.QTDE_PEDIDA_PRODUTO),0,1,S.PRECO_LISTA * ABS(I.QTDE_PEDIDA_PRODUTO)))*100,0) PERC_DESCONTO ,
  442.       NVL(S.PRECO_LISTA,0) PRECO_LISTA ,
  443.       NULL AS COD_SITUACAO_PRODUTO ,
  444.       L.NRO_EMPRESA ,
  445.       UPPER(L.COD_NRO_LOJA) AS COD_NRO_LOJA ,
  446.       UPPER(L.DESC_LOJA)    AS DESC_LOJA ,
  447.       NVL(S.VR_TROCA_SERVICO,0) VR_TROCA ,
  448.       (SELECT (NVL(VR_TOTAL_PRODUTOS,0) + NVL(VR_TOTAL_SERVICOS,0) - NVL(VR_TOTAL_DESCONTOS,0)) VR_TOTAL_PEDIDO
  449.       FROM MV_PEDIDO T
  450.       WHERE T.NRO_LOJA = P.NRO_LOJA
  451.       AND T.NRO_PEDIDO = P.NRO_PEDIDO
  452.       ) VR_TOTAL_PEDIDO ,
  453.       (SELECT NRO_TIPO_COMISSAO
  454.       FROM FP_TIPO_COMISSAO
  455.       WHERE NRO_EMPRESA                = L.NRO_EMPRESA
  456.       AND DESC_TIPO_COMISSAO_ABREVIADO = 'SRV'
  457.       AND FLAG_ATIVO                   = 'S'
  458.       ) NRO_TIPO_COMISSAO ,
  459.       (SELECT DESC_TIPO_SERVICO
  460.       FROM MV_TIPO_SERVICO T
  461.       WHERE T.NRO_TIPO_SERVICO = TS.NRO_TIPO_SERVICO
  462.       )                          AS DESC_DEPTO_TIPO_SERVICO ,
  463.       TO_CHAR(TS.GARANTIA_MESES) AS COD_PRODUTO_QTDE_MESES_SERVICO ,
  464.       NULL                       AS DESC_PRODUTO ,
  465.       SUBSTR('SERV',1,4)         AS TIPO_COMISSAO ,
  466.       S.PERC_COMISSAO            AS PERC_COMISSAO_PRODUTO_SERVICO ,
  467.       S.VALOR_COMISSAO           AS VR_COMISSAO_PRODUTO_SERVICO
  468.     FROM MV_ITEM_PEDIDO_PRODUTO I ,
  469.       MV_ITEM_PEDIDO_SERVICO S ,
  470.       MV_SERVICO TS ,
  471.       MV_PEDIDO P ,
  472.       MV_USUARIO U ,
  473.       MV_LOJA L
  474.     WHERE P.DT_FATURAMENTO_PEDIDO >= TO_DATE('01/01/2018','DD/MM/YYYY')
  475.     AND P.DT_FATURAMENTO_PEDIDO    < TO_DATE('01/01/2018','DD/MM/YYYY') + 1
  476.     AND P.STS_PEDIDO                                                        IN (40,50,91)
  477.     AND ( 0             IS NULL
  478.     OR P.NRO_LOJA                  = 0)
  479.     AND L.NRO_EMPRESA              = 0
  480.     AND P.NRO_LOJA                 = L.NRO_LOJA
  481.     AND I.NRO_LOJA                 = P.NRO_LOJA
  482.     AND I.NRO_PEDIDO               = P.NRO_PEDIDO
  483.     AND I.NRO_PEDIDO               = S.NRO_PEDIDO
  484.     AND I.NRO_LOJA                 = S.NRO_LOJA
  485.     AND I.NRO_ITEM_PEDIDO_PRODUTO  = S.NRO_ITEM_PEDIDO_PRODUTO
  486.     AND TS.NRO_SERVICO             = S.NRO_SERVICO
  487.     AND U.NRO_USUARIO              = S.NRO_USUARIO
  488.     AND (0           IS NULL
  489.     OR U.NRO_USUARIO               = 0)
  490.     UNION
  491.     /* SERVICOS CANCELADOS */
  492.     SELECT 'C' FLAG_TIPO_VENDA ,
  493.       P.NRO_LOJA NRO_LOJA_PEDIDO ,
  494.       P.NRO_PEDIDO ,
  495.       I.NRO_ITEM_PEDIDO_PRODUTO ,
  496.       S.NRO_USUARIO ,
  497.       DECODE(S.NRO_PERFIL_USUARIO_VENDA, NULL, U.nro_perfil_usuario, S.NRO_PERFIL_USUARIO_VENDA) NRO_PERFIL_USUARIO ,
  498.       U.RM_CHAPA_FUNCIONARIO AS RM_CHAPA_FUNCIONARIO ,
  499.       U.NOME_USUARIO         AS NOME_USUARIO ,
  500.       NULL                   AS NRO_PRODUTO /* I.NRO_PRODUTO */
  501.       ,
  502.       TS.NRO_TIPO_SERVICO   AS NRO_DEPTO_TIPO_SERVICO ,
  503.       NULL                  AS NRO_PROMOCAO ,
  504.       IR.DT_INCLUSAO        AS DT_FATURAMENTO_PEDIDO ,
  505.       sd.QTDE_DEVOLVIDA     AS QTDE_PEDIDA_PRODUTO_SERVICO ,
  506.       S.VR_UNITARIO_SERVICO AS VR_UNITARIO_PRODUTO_SERVICO ,
  507.       NVL((((NVL(S.PRECO_LISTA,0) * ABS(-sd.qtde_devolvida)) - NVL(ABS((-S.VR_UNITARIO_SERVICO*sd.QTDE_DEVOLVIDA)),0))/DECODE(S.PRECO_LISTA * ABS(-sd.QTDE_DEVOLVIDA),0,1,S.PRECO_LISTA * ABS(-sd.QTDE_DEVOLVIDA)))*100,0) PERC_DESCONTO ,
  508.       NVL(S.PRECO_LISTA,0) PRECO_LISTA ,
  509.       NULL AS COD_SITUACAO_PRODUTO ,
  510.       L.NRO_EMPRESA ,
  511.       UPPER(L.COD_NRO_LOJA) AS COD_NRO_LOJA ,
  512.       UPPER(L.DESC_LOJA)    AS DESC_LOJA ,
  513.       NVL(S.VR_TROCA_SERVICO,0) VR_TROCA ,
  514.       (SELECT (NVL(VR_TOTAL_PRODUTOS,0) + NVL(VR_TOTAL_SERVICOS,0) - NVL(VR_TOTAL_DESCONTOS,0)) VR_TOTAL_PEDIDO
  515.       FROM MV_PEDIDO T
  516.       WHERE T.NRO_LOJA = P.NRO_LOJA
  517.       AND T.NRO_PEDIDO = P.NRO_PEDIDO
  518.       ) VR_TOTAL_PEDIDO ,
  519.       (SELECT NRO_TIPO_COMISSAO
  520.       FROM FP_TIPO_COMISSAO
  521.       WHERE NRO_EMPRESA                = L.NRO_EMPRESA
  522.       AND DESC_TIPO_COMISSAO_ABREVIADO = 'SRV'
  523.       AND FLAG_ATIVO                   = 'S'
  524.       ) NRO_TIPO_COMISSAO ,
  525.       (SELECT DESC_TIPO_SERVICO
  526.       FROM MV_TIPO_SERVICO T
  527.       WHERE T.NRO_TIPO_SERVICO = TS.NRO_TIPO_SERVICO
  528.       )                          AS DESC_DEPTO_TIPO_SERVICO ,
  529.       TO_CHAR(TS.GARANTIA_MESES) AS COD_PRODUTO_QTDE_MESES_SERVICO ,
  530.       NULL                       AS DESC_PRODUTO ,
  531.       SUBSTR('SERV',1,4)         AS TIPO_COMISSAO ,
  532.       S.PERC_COMISSAO            AS PERC_COMISSAO_PRODUTO_SERVICO ,
  533.       S.VALOR_COMISSAO           AS VR_COMISSAO_PRODUTO_SERVICO
  534.     FROM MV_ITEM_RECIBO_DEVOLUCAO IR ,
  535.       MV_ITEM_PEDIDO_PRODUTO I ,
  536.       MV_ITEM_PEDIDO_SERVICO S ,
  537.       mv_servico_recibo_devolucao sd ,
  538.       MV_SERVICO TS ,
  539.       MV_PEDIDO P ,
  540.       MV_USUARIO U ,
  541.       MV_LOJA L
  542.     WHERE ir.nro_seq_nf IS NULL
  543.     AND IR.DT_INCLUSAO  >= TO_DATE('01/01/2018','DD/MM/YYYY')
  544.     AND IR.DT_INCLUSAO   < TO_DATE('01/01/2018','DD/MM/YYYY') + 1
  545.     AND IR.NRO_PEDIDO_NOVO            IS NULL
  546.     AND IR.IND_UTILIZACAO              = 'S'
  547.     AND ( 0                 IS NULL
  548.     OR IR.NRO_LOJA_PEDIDO              = 0)
  549.     AND IR.NRO_LOJA_PEDIDO             = L.NRO_LOJA
  550.     AND I.NRO_LOJA                     = IR.NRO_LOJA_PEDIDO
  551.     AND I.NRO_PEDIDO                   = IR.NRO_PEDIDO
  552.     AND I.NRO_ITEM_PEDIDO_PRODUTO      = IR.NRO_ITEM_PEDIDO_PRODUTO
  553.     AND sd.nro_pedido (+)              = s.nro_pedido
  554.     AND sd.nro_loja_pedido (+)         = s.nro_loja
  555.     AND sd.nro_item_pedido_produto (+) = s.nro_item_pedido_produto
  556.     AND sd.nro_servico (+)             = s.nro_servico
  557.     AND P.NRO_LOJA                     = I.NRO_LOJA
  558.     AND P.NRO_PEDIDO                   = I.NRO_PEDIDO
  559.     AND I.NRO_PEDIDO                   = S.NRO_PEDIDO
  560.     AND I.NRO_LOJA                     = S.NRO_LOJA
  561.     AND I.NRO_ITEM_PEDIDO_PRODUTO      = S.NRO_ITEM_PEDIDO_PRODUTO
  562.     AND TS.NRO_SERVICO                 = S.NRO_SERVICO
  563.     AND U.NRO_USUARIO                  = S.NRO_USUARIO
  564.     AND (0               IS NULL
  565.     OR U.NRO_USUARIO                   = 0)
  566.     AND L.NRO_EMPRESA                  = 0
  567.     UNION
  568.     /* SERVICOS COM NF DE DEVOLUCAO */
  569.     SELECT 'C' FLAG_TIPO_VENDA ,
  570.       P.NRO_LOJA NRO_LOJA_PEDIDO ,
  571.       P.NRO_PEDIDO ,
  572.       I.NRO_ITEM_PEDIDO_PRODUTO ,
  573.       S.NRO_USUARIO ,
  574.       DECODE(S.NRO_PERFIL_USUARIO_VENDA, NULL, U.nro_perfil_usuario, S.NRO_PERFIL_USUARIO_VENDA) NRO_PERFIL_USUARIO ,
  575.       U.RM_CHAPA_FUNCIONARIO AS RM_CHAPA_FUNCIONARIO ,
  576.       U.NOME_USUARIO         AS NOME_USUARIO ,
  577.       NULL                   AS NRO_PRODUTO /*I.NRO_PRODUTO*/
  578.       ,
  579.       TS.NRO_TIPO_SERVICO   AS NRO_DEPTO_TIPO_SERVICO ,
  580.       NULL                  AS NRO_PROMOCAO ,
  581.       IR.DT_INCLUSAO        AS DT_FATURAMENTO_PEDIDO ,
  582.       sd.QTDE_DEVOLVIDA     AS QTDE_PEDIDA_PRODUTO_SERVICO ,
  583.       S.VR_UNITARIO_SERVICO AS VR_UNITARIO_PRODUTO_SERVICO ,
  584.       NVL((((NVL(S.PRECO_LISTA,0) * ABS(-sd.qtde_devolvida)) - NVL(ABS((-S.VR_UNITARIO_SERVICO*sd.QTDE_DEVOLVIDA)),0))/DECODE(S.PRECO_LISTA * ABS(-sd.QTDE_DEVOLVIDA),0,1,S.PRECO_LISTA * ABS(-sd.QTDE_DEVOLVIDA)))*100,0) PERC_DESCONTO ,
  585.       NVL(S.PRECO_LISTA,0) PRECO_LISTA ,
  586.       NULL AS COD_SITUACAO_PRODUTO ,
  587.       L.NRO_EMPRESA ,
  588.       UPPER(L.COD_NRO_LOJA) AS COD_NRO_LOJA ,
  589.       UPPER(L.DESC_LOJA)    AS DESC_LOJA ,
  590.       NVL(S.VR_TROCA_SERVICO,0) VR_TROCA ,
  591.       (SELECT (NVL(VR_TOTAL_PRODUTOS,0) + NVL(VR_TOTAL_SERVICOS,0) - NVL(VR_TOTAL_DESCONTOS,0)) VR_TOTAL_PEDIDO
  592.       FROM MV_PEDIDO T
  593.       WHERE T.NRO_LOJA = P.NRO_LOJA
  594.       AND T.NRO_PEDIDO = P.NRO_PEDIDO
  595.       ) VR_TOTAL_PEDIDO ,
  596.       (SELECT NRO_TIPO_COMISSAO
  597.       FROM FP_TIPO_COMISSAO
  598.       WHERE NRO_EMPRESA                = L.NRO_EMPRESA
  599.       AND DESC_TIPO_COMISSAO_ABREVIADO = 'SRV'
  600.       AND FLAG_ATIVO                   = 'S'
  601.       ) NRO_TIPO_COMISSAO ,
  602.       (SELECT DESC_TIPO_SERVICO
  603.       FROM MV_TIPO_SERVICO T
  604.       WHERE T.NRO_TIPO_SERVICO = TS.NRO_TIPO_SERVICO
  605.       )                          AS DESC_DEPTO_TIPO_SERVICO ,
  606.       TO_CHAR(TS.GARANTIA_MESES) AS COD_PRODUTO_QTDE_MESES_SERVICO ,
  607.       NULL                       AS DESC_PRODUTO ,
  608.       SUBSTR('SERV',1,4)         AS TIPO_COMISSAO ,
  609.       S.PERC_COMISSAO            AS PERC_COMISSAO_PRODUTO_SERVICO ,
  610.       S.VALOR_COMISSAO           AS VR_COMISSAO_PRODUTO_SERVICO
  611.     FROM mv_nf nf,
  612.       MV_ITEM_RECIBO_DEVOLUCAO IR ,
  613.       MV_ITEM_PEDIDO_PRODUTO I ,
  614.       MV_ITEM_PEDIDO_SERVICO S ,
  615.       mv_servico_recibo_devolucao sd ,
  616.       MV_SERVICO TS ,
  617.       MV_PEDIDO P ,
  618.       MV_USUARIO U ,
  619.       MV_LOJA L
  620.     WHERE nf.dt_emissao_nf >= TO_DATE('01/01/2018','DD/MM/YYYY')
  621.     AND nf.dt_emissao_nf    < TO_DATE('01/01/2018','DD/MM/YYYY') + 1
  622.     AND nf.nro_tipo_nf                                               IN (22, 23)
  623.     AND ir.nro_seq_nf       = nf.nro_seq_nf
  624.     AND ir.NRO_LOJA_ITEM_NF = nf.nro_loja
  625.     AND IR.NRO_PEDIDO_NOVO            IS NULL
  626.     AND IR.IND_UTILIZACAO              = 'S'
  627.     AND ( 0                 IS NULL
  628.     OR IR.NRO_LOJA_PEDIDO              = 0)
  629.     AND IR.NRO_LOJA_PEDIDO             = L.NRO_LOJA
  630.     AND I.NRO_LOJA                     = IR.NRO_LOJA_PEDIDO
  631.     AND I.NRO_PEDIDO                   = IR.NRO_PEDIDO
  632.     AND I.NRO_ITEM_PEDIDO_PRODUTO      = IR.NRO_ITEM_PEDIDO_PRODUTO
  633.     AND sd.nro_pedido (+)              = s.nro_pedido
  634.     AND sd.nro_loja_pedido (+)         = s.nro_loja
  635.     AND sd.nro_item_pedido_produto (+) = s.nro_item_pedido_produto
  636.     AND sd.nro_servico (+)             = s.nro_servico
  637.     AND P.NRO_LOJA                     = I.NRO_LOJA
  638.     AND P.NRO_PEDIDO                   = I.NRO_PEDIDO
  639.     AND I.NRO_PEDIDO                   = S.NRO_PEDIDO
  640.     AND I.NRO_LOJA                     = S.NRO_LOJA
  641.     AND I.NRO_ITEM_PEDIDO_PRODUTO      = S.NRO_ITEM_PEDIDO_PRODUTO
  642.     AND TS.NRO_SERVICO                 = S.NRO_SERVICO
  643.     AND U.NRO_USUARIO                  = S.NRO_USUARIO
  644.     AND (0               IS NULL
  645.     OR U.NRO_USUARIO                   = 0)
  646.     AND L.NRO_EMPRESA                  = 0
  647.     UNION
  648.     /*PEDIDO SERVICO*/
  649.     SELECT 'V' FLAG_TIPO_VENDA ,
  650.       P.NRO_LOJA NRO_LOJA_PEDIDO ,
  651.       P.NRO_PEDIDO ,
  652.       NULL AS NRO_ITEM_PEDIDO_PRODUTO ,
  653.       S.NRO_USUARIO ,
  654.       DECODE(S.NRO_PERFIL_USUARIO_VENDA, NULL, U.nro_perfil_usuario, S.NRO_PERFIL_USUARIO_VENDA) NRO_PERFIL_USUARIO ,
  655.       U.RM_CHAPA_FUNCIONARIO         AS RM_CHAPA_FUNCIONARIO ,
  656.       U.NOME_USUARIO                 AS NOME_USUARIO ,
  657.       NULL                           AS NRO_PRODUTO ,
  658.       TS.NRO_TIPO_SERVICO            AS NRO_DEPTO_TIPO_SERVICO ,
  659.       NULL                           AS NRO_PROMOCAO ,
  660.       TRUNC(P.DT_FATURAMENTO_PEDIDO) AS DT_FATURAMENTO_PEDIDO ,
  661.       SUM(S.QTDE_SERVICO)            AS QTDE_PEDIDA_PRODUTO_SERVICO ,
  662.       S.VR_UNITARIO_SERVICO          AS VR_UNITARIO_PRODUTO_SERVICO ,
  663.       NVL((((NVL(S.PRECO_LISTA,0) * ABS(S.QTDE_SERVICO)) - NVL(ABS((S.VR_UNITARIO_SERVICO*S.QTDE_SERVICO)),0))/DECODE(S.PRECO_LISTA * ABS(S.QTDE_SERVICO),0,1,S.PRECO_LISTA * ABS(S.QTDE_SERVICO)))*100,0) PERC_DESCONTO ,
  664.       NVL(S.PRECO_LISTA,0) PRECO_LISTA ,
  665.       NULL AS COD_SITUACAO_PRODUTO ,
  666.       L.NRO_EMPRESA ,
  667.       UPPER(L.COD_NRO_LOJA) AS COD_NRO_LOJA ,
  668.       UPPER(L.DESC_LOJA)    AS DESC_LOJA ,
  669.       NVL(S.VR_TROCA_SERVICO,0) VR_TROCA ,
  670.       (SELECT (NVL(VR_TOTAL_PRODUTOS,0) + NVL(VR_TOTAL_SERVICOS,0) - NVL(VR_TOTAL_DESCONTOS,0)) VR_TOTAL_PEDIDO
  671.       FROM MV_PEDIDO T
  672.       WHERE T.NRO_LOJA = P.NRO_LOJA
  673.       AND T.NRO_PEDIDO = P.NRO_PEDIDO
  674.       ) VR_TOTAL_PEDIDO ,
  675.       (SELECT NRO_TIPO_COMISSAO
  676.       FROM FP_TIPO_COMISSAO
  677.       WHERE NRO_EMPRESA                = L.NRO_EMPRESA
  678.       AND DESC_TIPO_COMISSAO_ABREVIADO = 'SRV'
  679.       AND FLAG_ATIVO                   = 'S'
  680.       ) NRO_TIPO_COMISSAO ,
  681.       (SELECT DESC_TIPO_SERVICO
  682.       FROM MV_TIPO_SERVICO T
  683.       WHERE T.NRO_TIPO_SERVICO = TS.NRO_TIPO_SERVICO
  684.       )                          AS DESC_DEPTO_TIPO_SERVICO ,
  685.       TO_CHAR(TS.GARANTIA_MESES) AS COD_PRODUTO_QTDE_MESES_SERVICO ,
  686.       NULL                       AS DESC_PRODUTO ,
  687.       SUBSTR('SERV',1,4)         AS TIPO_COMISSAO ,
  688.       S.PERC_COMISSAO            AS PERC_COMISSAO_PRODUTO_SERVICO ,
  689.       S.VALOR_COMISSAO           AS VR_COMISSAO_PRODUTO_SERVICO
  690.     FROM MV_PEDIDO_SERVICO S ,
  691.       MV_SERVICO TS ,
  692.       MV_PEDIDO P ,
  693.       MV_USUARIO U ,
  694.       MV_LOJA L
  695.     WHERE P.DT_FATURAMENTO_PEDIDO >= TO_DATE('01/01/2018','DD/MM/YYYY')
  696.     AND P.DT_FATURAMENTO_PEDIDO    < TO_DATE('01/01/2018','DD/MM/YYYY') + 1
  697.     AND P.STS_PEDIDO                                                        IN (40,50,91)
  698.     AND ( 0             IS NULL
  699.     OR P.NRO_LOJA                  = 0)
  700.     AND P.NRO_LOJA                 = L.NRO_LOJA
  701.     AND P.NRO_PEDIDO               = S.NRO_PEDIDO
  702.     AND P.NRO_LOJA                 = S.NRO_LOJA
  703.     AND TS.NRO_SERVICO             = S.NRO_SERVICO
  704.     AND U.NRO_USUARIO              = S.NRO_USUARIO
  705.     AND (0           IS NULL
  706.     OR U.NRO_USUARIO               = 0)
  707.     AND L.NRO_EMPRESA              = 0
  708.     GROUP BY P.NRO_LOJA ,
  709.       P.NRO_PEDIDO ,
  710.       S.NRO_USUARIO ,
  711.       RM_CHAPA_FUNCIONARIO ,
  712.       NOME_USUARIO ,
  713.       S.NRO_PERFIL_USUARIO_VENDA ,
  714.       U.NRO_PERFIL_USUARIO ,
  715.       COD_NRO_LOJA ,
  716.       DESC_LOJA ,
  717.       S.VR_TROCA_SERVICO ,
  718.       TS.NRO_TIPO_SERVICO ,
  719.       TS.GARANTIA_MESES ,
  720.       TRUNC(P.DT_FATURAMENTO_PEDIDO) ,
  721.       S.VR_UNITARIO_SERVICO ,
  722.       S.QTDE_SERVICO ,
  723.       S.PRECO_LISTA ,
  724.       L.NRO_EMPRESA ,
  725.       S.PERC_COMISSAO ,
  726.       S.VALOR_COMISSAO
  727.     UNION
  728.     SELECT 'C' FLAG_TIPO_VENDA ,
  729.       P.NRO_LOJA NRO_LOJA_PEDIDO ,
  730.       P.NRO_PEDIDO ,
  731.       NULL AS NRO_ITEM_PEDIDO_PRODUTO ,
  732.       S.NRO_USUARIO ,
  733.       DECODE(S.NRO_PERFIL_USUARIO_VENDA, NULL, U.nro_perfil_usuario, S.NRO_PERFIL_USUARIO_VENDA) NRO_PERFIL_USUARIO ,
  734.       U.RM_CHAPA_FUNCIONARIO AS RM_CHAPA_FUNCIONARIO ,
  735.       U.NOME_USUARIO         AS NOME_USUARIO ,
  736.       NULL                   AS NRO_PRODUTO /*I.NRO_PRODUTO*/
  737.       ,
  738.       TS.NRO_TIPO_SERVICO              AS NRO_DEPTO_TIPO_SERVICO ,
  739.       NULL                             AS NRO_PROMOCAO ,
  740.       TRUNC(S.DT_CANCELAMENTO_SERVICO) AS DT_FATURAMENTO_PEDIDO ,
  741.       SUM(Sd.qtde_devolvida)           AS QTDE_PEDIDA_PRODUTO_SERVICO ,
  742.       S.VR_UNITARIO_SERVICO            AS VR_UNITARIO_PRODUTO_SERVICO ,
  743.       NVL((((NVL(S.PRECO_LISTA,0) * ABS(-Sd.qtde_devolvida)) - NVL(ABS((-S.VR_UNITARIO_SERVICO*Sd.qtde_devolvida)),0))/DECODE(S.PRECO_LISTA * ABS(-Sd.qtde_devolvida),0,1,S.PRECO_LISTA * ABS(-Sd.qtde_devolvida)))*100,0) PERC_DESCONTO ,
  744.       NVL(S.PRECO_LISTA,0) PRECO_LISTA ,
  745.       NULL AS COD_SITUACAO_PRODUTO ,
  746.       L.NRO_EMPRESA ,
  747.       UPPER(L.COD_NRO_LOJA) AS COD_NRO_LOJA ,
  748.       UPPER(L.DESC_LOJA)    AS DESC_LOJA ,
  749.       NVL(S.VR_TROCA_SERVICO,0) VR_TROCA ,
  750.       (SELECT (NVL(VR_TOTAL_PRODUTOS,0) + NVL(VR_TOTAL_SERVICOS,0) - NVL(VR_TOTAL_DESCONTOS,0)) VR_TOTAL_PEDIDO
  751.       FROM MV_PEDIDO T
  752.       WHERE T.NRO_LOJA = P.NRO_LOJA
  753.       AND T.NRO_PEDIDO = P.NRO_PEDIDO
  754.       ) VR_TOTAL_PEDIDO ,
  755.       (SELECT NRO_TIPO_COMISSAO
  756.       FROM FP_TIPO_COMISSAO
  757.       WHERE NRO_EMPRESA                = L.NRO_EMPRESA
  758.       AND DESC_TIPO_COMISSAO_ABREVIADO = 'SRV'
  759.       AND FLAG_ATIVO                   = 'S'
  760.       ) NRO_TIPO_COMISSAO ,
  761.       (SELECT DESC_TIPO_SERVICO
  762.       FROM MV_TIPO_SERVICO T
  763.       WHERE T.NRO_TIPO_SERVICO = TS.NRO_TIPO_SERVICO
  764.       )                          AS DESC_DEPTO_TIPO_SERVICO ,
  765.       TO_CHAR(TS.GARANTIA_MESES) AS COD_PRODUTO_QTDE_MESES_SERVICO ,
  766.       NULL                       AS DESC_PRODUTO ,
  767.       SUBSTR('SERV',1,4)         AS TIPO_COMISSAO ,
  768.       S.PERC_COMISSAO            AS PERC_COMISSAO_PRODUTO_SERVICO ,
  769.       S.VALOR_COMISSAO           AS VR_COMISSAO_PRODUTO_SERVICO
  770.     FROM MV_PEDIDO_SERVICO S ,
  771.       mv_servico_recibo_devolucao sd ,
  772.       MV_SERVICO TS ,
  773.       MV_PEDIDO P ,
  774.       MV_USUARIO U ,
  775.       MV_LOJA L
  776.     WHERE S.DT_CANCELAMENTO_SERVICO >= TO_DATE('01/01/2018','DD/MM/YYYY')
  777.     AND S.DT_CANCELAMENTO_SERVICO    < TO_DATE('01/01/2018','DD/MM/YYYY') + 1
  778.     AND ( 0               IS NULL
  779.     OR S.NRO_LOJA                    = 0)
  780.     AND P.NRO_LOJA                   = S.NRO_LOJA
  781.     AND P.NRO_PEDIDO                 = S.NRO_PEDIDO
  782.     AND sd.nro_loja_pedido (+)       = S.NRO_LOJA
  783.     AND sd.NRO_PEDIDO (+)            = S.NRO_PEDIDO
  784.     AND sd.nro_servico (+)           = s.nro_servico
  785.     AND sd.nro_item_pedido_produto  IS NULL
  786.     AND SD.NRO_PEDIDO_NOVO          IS NULL
  787.     AND TS.NRO_SERVICO               = S.NRO_SERVICO
  788.     AND U.NRO_USUARIO                = S.NRO_USUARIO
  789.     AND (0             IS NULL
  790.     OR U.NRO_USUARIO                 = 0)
  791.     AND L.NRO_EMPRESA                = 0
  792.     AND L.nro_loja                   = S.nro_loja
  793.     GROUP BY P.NRO_LOJA ,
  794.       P.NRO_PEDIDO ,
  795.       S.NRO_USUARIO ,
  796.       S.NRO_PERFIL_USUARIO_VENDA ,
  797.       U.NRO_PERFIL_USUARIO ,
  798.       RM_CHAPA_FUNCIONARIO ,
  799.       NOME_USUARIO ,
  800.       COD_NRO_LOJA ,
  801.       DESC_LOJA ,
  802.       S.VR_TROCA_SERVICO ,
  803.       TS.NRO_TIPO_SERVICO ,
  804.       TS.GARANTIA_MESES ,
  805.       TRUNC(S.DT_CANCELAMENTO_SERVICO) ,
  806.       S.VR_UNITARIO_SERVICO ,
  807.       Sd.qtde_devolvida ,
  808.       S.PRECO_LISTA ,
  809.       L.NRO_EMPRESA ,
  810.       S.PERC_COMISSAO ,
  811.       S.VALOR_COMISSAO
  812.     ) A
  813.   ) B
  814. GROUP BY NRO_EMPRESA ,
  815.   RM_CHAPA_FUNCIONARIO ,
  816.   NRO_USUARIO ,
  817.   NOME_USUARIO ,
  818.   COD_NRO_LOJA ,
  819.   DESC_LOJA ,
  820.   NRO_LOJA_PEDIDO ,
  821.   NRO_PERFIL_USUARIO ,
  822.   NRO_DEPTO_TIPO_SERVICO ,
  823.   DESC_DEPTO_TIPO_SERVICO ,
  824.   TIPO_COMISSAO,
  825.   FLAG_TIPO_VENDA
  826. ORDER BY NRO_LOJA_PEDIDO ,
  827.   NOME_USUARIO ,
  828.   NRO_USUARIO ,
  829.   TIPO_COMISSAO ,
  830.   DESC_DEPTO_TIPO_SERVICO
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement