Jump to content
Seja Membro VIP - Remova Banners de Propagandas, Tenha Liberado Qualquer Download, Além de Acessos em Áreas Exclusivas!! ×

Recommended Posts


  • Topic Count:  3
  • Topics Per Day:  0.01
  • Content Count:  5
  • Content Per Day:  0.02
  • Reputation:   0
  • Achievement Points:  60
  • Solved Content:  0
  • Days Won:  0
  • Status:  Offline
  • Age:  42
  • Device:  Windows

Posted

Olá pessoal,

Alguém poderia me ajudar a converter essa sentença SQL para Oracle? Na base SQL essa sentença funciona direitinho, mas não consigo salvar em uma base Oracle.

Segue sentença abaixo:

SELECT CASE
         WHEN MONTH(TMOV.DATASAIDA) = 1 THEN '01-JAN'
         WHEN MONTH(TMOV.DATASAIDA) = 2 THEN '02-FEV'
         WHEN MONTH(TMOV.DATASAIDA) = 3 THEN '03-MAR'
         WHEN MONTH(TMOV.DATASAIDA) = 4 THEN '04-ABR'
         WHEN MONTH(TMOV.DATASAIDA) = 5 THEN '05-MAI'
         WHEN MONTH(TMOV.DATASAIDA) = 6 THEN '06-JUN'
         WHEN MONTH(TMOV.DATASAIDA) = 7 THEN '07-JUL'
         WHEN MONTH(TMOV.DATASAIDA) = 8 THEN '08-AGO'
         WHEN MONTH(TMOV.DATASAIDA) = 9 THEN '09-SET'
         WHEN MONTH(TMOV.DATASAIDA) = 10 THEN '10-OUT'
         WHEN MONTH(TMOV.DATASAIDA) = 11 THEN '11-NOV'
         WHEN MONTH(TMOV.DATASAIDA) = 12 THEN '12-DEZ'
       END                  MES,
       YEAR(TMOV.DATASAIDA) ANO,
       TMOV.CODCOLIGADA,
       TMOV.CODFILIAL,
       CO.NOME 'NOME COLIGADA',
       CO.NOMEFANTASIA 'NOME FANTASIA COLIGADA',
       FI.NOME 'NOME FILIAL',
       FI.NOMEFANTASIA 'NOME FANTASIA FILIAL',
       TITMMOV.IDPRD 'COD PRODUTO',
       TPRODUTO.DESCRICAO 'NOME PRODUTO',
       TITMMOV.QUANTIDADE,
       TITMMOV.QUANTIDADETOTAL,
       TRELSLD.CUSTOMEDITEM 'CUSTO MÉDIO',
       TITMMOV.CODCCUSTO 'CENTRO DE CUSTO',
       GCCUSTO.NOME 'NOME CENTRO DE CUSTO',
       TMOV.DATASAIDA 'DATA SAÍDA ESTOQUE',
       TMOV.DATAEMISSAO,
       TMOV.IDMOV,
       CASE
         WHEN TPRDFIL.ESTOCAVEL = 1 THEN 'ESTOCAVEL'
         WHEN TPRDFIL.ESTOCAVEL = 0 THEN 'NAO ESTOCAVEL'
         WHEN TPRDFIL.ESTOCAVEL IS NULL THEN 'SEM INFORMAÇÃO DE ESTOCAVEL OU NÃO'
       END          ESTOCAVEL,
       TMOV.CODTMV,
       TTB1.DESCRICAO 'CLASSIF/CATEGORIA',
       CASE
         WHEN TMOV.STATUS = 'A' THEN 'Pendente / A Faturar'
         WHEN TMOV.STATUS = 'B' THEN 'Bloqueado'
         WHEN TMOV.STATUS = 'C' THEN 'Cancelado'
         WHEN TMOV.STATUS = 'F' THEN 'Recebido / Faturado'
         WHEN TMOV.STATUS = 'G' THEN 'Parcialmente Recebido / Parcialmente Faturado'
         WHEN TMOV.STATUS = 'N' THEN 'Normal'
         WHEN TMOV.STATUS = 'P' THEN 'Parcialmente Quitado'
         WHEN TMOV.STATUS = 'Q' THEN 'Quitado'
         WHEN TMOV.STATUS = 'R' THEN 'Não Processado'
         WHEN TMOV.STATUS = 'U' THEN 'Em Faturamento'
       END                                     AS STATUS,
       TTMV.NOME AS 'MOVIMENTO'
FROM   TMOV(NOLOCK)
       INNER JOIN dbo.GCOLIGADA CO (NOLOCK)
         ON CO.CODCOLIGADA = TMOV.CODCOLIGADA
       INNER JOIN dbo.GFILIAL FI (NOLOCK)
         ON FI.CODCOLIGADA = CO.CODCOLIGADA
         AND FI.CODFILIAL = TMOV.CODFILIAL
       INNER JOIN TITMMOV(NOLOCK)
         ON TMOV.CODCOLIGADA = TITMMOV.CODCOLIGADA
            AND TMOV.IDMOV = TITMMOV.IDMOV
       INNER JOIN TPRODUTO(NOLOCK)
         ON TITMMOV.IDPRD = TPRODUTO.IDPRD
       INNER JOIN GCCUSTO(NOLOCK)
         ON TITMMOV.CODCCUSTO = GCCUSTO.CODCCUSTO
            AND TITMMOV.CODCOLIGADA = GCCUSTO.CODCOLIGADA
       LEFT JOIN TPRDFIL(NOLOCK)
         ON TITMMOV.CODCOLIGADA = TPRDFIL.CODCOLIGADA
            AND TITMMOV.IDPRD = TPRDFIL.IDPRD
            AND TMOV.CODFILIAL = TPRDFIL.CODFILIAL
       INNER JOIN TPRODUTODEF(NOLOCK)
         ON TITMMOV.CODCOLIGADA = TPRODUTODEF.CODCOLIGADA
            AND TITMMOV.IDPRD = TPRODUTODEF.IDPRD
       LEFT JOIN TTB1(NOLOCK)
         ON TPRODUTODEF.CODCOLIGADA = TTB1.CODCOLIGADA
            AND TPRODUTODEF.CODTB1FAT = TTB1.CODTB1FAT
       LEFT JOIN TRELSLD(NOLOCK)
         ON TMOV.CODCOLIGADA = TRELSLD.CODCOLIGADA
            AND TMOV.CODFILIAL = TRELSLD.CODFILIAL
            AND TMOV.IDMOV = TRELSLD.IDMOV
            AND TITMMOV.IDPRD = TRELSLD.IDPRD
       LEFT JOIN TTMV(NOLOCK)
         ON TTMV.CODTMV = TMOV.CODTMV
            AND TTMV.CODCOLIGADA = TMOV.CODCOLIGADA
WHERE  TMOV.CODTMV = '1.1.01'
       AND TMOV.CODCOLIGADA LIKE :CODCOLIGADA
       AND TMOV.CODFILIAL LIKE :CODFILIAL
       AND TMOV.DATAEMISSAO >= :DATA_INICIO_D
       AND TMOV.DATAEMISSAO <= :DATA_FIM_D
       AND TPRODUTO.TIPO = 'P'

UNION
SELECT CASE
         WHEN MONTH(TMOV.DATASAIDA) = 1 THEN '01-JAN'
         WHEN MONTH(TMOV.DATASAIDA) = 2 THEN '02-FEV'
         WHEN MONTH(TMOV.DATASAIDA) = 3 THEN '03-MAR'
         WHEN MONTH(TMOV.DATASAIDA) = 4 THEN '04-ABR'
         WHEN MONTH(TMOV.DATASAIDA) = 5 THEN '05-MAI'
         WHEN MONTH(TMOV.DATASAIDA) = 6 THEN '06-JUN'
         WHEN MONTH(TMOV.DATASAIDA) = 7 THEN '07-JUL'
         WHEN MONTH(TMOV.DATASAIDA) = 8 THEN '08-AGO'
         WHEN MONTH(TMOV.DATASAIDA) = 9 THEN '09-SET'
         WHEN MONTH(TMOV.DATASAIDA) = 10 THEN '10-OUT'
         WHEN MONTH(TMOV.DATASAIDA) = 11 THEN '11-NOV'
         WHEN MONTH(TMOV.DATASAIDA) = 12 THEN '12-DEZ'
       END                  MES,
       YEAR(TMOV.DATASAIDA) ANO,
       TMOV.CODCOLIGADA,
       TMOV.CODFILIAL,
       CO.NOME 'NOME COLIGADA',
       CO.NOMEFANTASIA 'NOME FANTASIA COLIGADA',
       FI.NOME 'NOME FILIAL',
       FI.NOMEFANTASIA 'NOME FANTASIA FILIAL',
       TITMMOV.IDPRD 'COD PRODUTO',
       TPRODUTO.DESCRICAO 'NOME PRODUTO',
       TITMMOV.QUANTIDADE,
       TITMMOV.QUANTIDADETOTAL,
       (SELECT TOP 1 CAST(PRECOUNITARIO AS NUMERIC(14,2)) AS PRECOUNITARIO FROM TMOV (NOLOCK) AS TM

        INNER JOIN TITMMOV (NOLOCK) AS TIT
        ON  TM.CODCOLIGADA = TIT.CODCOLIGADA
        AND TM.IDMOV = TIT.IDMOV

        WHERE TM.CODTMV LIKE '1.2.%'
        and YEAR(TM.DATACRIACAO)>= YEAR(GETDATE()) - 1
        AND TM.CODCOLIGADA = TMOV.CODCOLIGADA
        AND TM.CODFILIAL = TMOV.CODFILIAL
        AND TIT.IDPRD = TITMMOV.IDPRD

        ORDER BY TMOV.DATACRIACAO DESC) 'CUSTO MÉDIO',
       TITMMOV.CODCCUSTO 'CENTRO DE CUSTO',
       GCCUSTO.NOME 'NOME CENTRO DE CUSTO',
       TMOV.DATASAIDA 'DATA SAÍDA ESTOQUE',
       TMOV.DATAEMISSAO,
       TMOV.IDMOV,
       CASE
         WHEN TPRDFIL.ESTOCAVEL = 1 THEN 'ESTOCAVEL'
         WHEN TPRDFIL.ESTOCAVEL = 0 THEN 'NAO ESTOCAVEL'
         WHEN TPRDFIL.ESTOCAVEL IS NULL THEN 'SEM INFORMAÇÃO DE ESTOCAVEL OU NÃO'
       END          ESTOCAVEL,
       TMOV.CODTMV,
       TTB1.DESCRICAO 'CLASSIF/CATEGORIA',
       CASE
         WHEN TMOV.STATUS = 'A' THEN 'Pendente / A Faturar'
         WHEN TMOV.STATUS = 'B' THEN 'Bloqueado'
         WHEN TMOV.STATUS = 'C' THEN 'Cancelado'
         WHEN TMOV.STATUS = 'F' THEN 'Recebido / Faturado'
         WHEN TMOV.STATUS = 'G' THEN 'Parcialmente Recebido / Parcialmente Faturado'
         WHEN TMOV.STATUS = 'N' THEN 'Normal'
         WHEN TMOV.STATUS = 'P' THEN 'Parcialmente Quitado'
         WHEN TMOV.STATUS = 'Q' THEN 'Quitado'
         WHEN TMOV.STATUS = 'R' THEN 'Não Processado'
         WHEN TMOV.STATUS = 'U' THEN 'Em Faturamento'
       END                                     AS STATUS,
       TTMV.NOME AS 'MOVIMENTO'
FROM   TMOV(NOLOCK)
       INNER JOIN dbo.GCOLIGADA CO (NOLOCK)
         ON CO.CODCOLIGADA = TMOV.CODCOLIGADA
       INNER JOIN dbo.GFILIAL FI (NOLOCK)
         ON FI.CODCOLIGADA = CO.CODCOLIGADA
         AND FI.CODFILIAL = TMOV.CODFILIAL
       INNER JOIN TITMMOV(NOLOCK)
         ON TMOV.CODCOLIGADA = TITMMOV.CODCOLIGADA
            AND TMOV.IDMOV = TITMMOV.IDMOV
       INNER JOIN TPRODUTO(NOLOCK)
         ON TITMMOV.IDPRD = TPRODUTO.IDPRD
       INNER JOIN GCCUSTO(NOLOCK)
         ON TITMMOV.CODCCUSTO = GCCUSTO.CODCCUSTO
            AND TITMMOV.CODCOLIGADA = GCCUSTO.CODCOLIGADA
       LEFT JOIN TPRDFIL(NOLOCK)
         ON TITMMOV.CODCOLIGADA = TPRDFIL.CODCOLIGADA
            AND TITMMOV.IDPRD = TPRDFIL.IDPRD
            AND TMOV.CODFILIAL = TPRDFIL.CODFILIAL
       INNER JOIN TPRODUTODEF(NOLOCK)
         ON TITMMOV.CODCOLIGADA = TPRODUTODEF.CODCOLIGADA
            AND TITMMOV.IDPRD = TPRODUTODEF.IDPRD
       LEFT JOIN TTB1(NOLOCK)
         ON TPRODUTODEF.CODCOLIGADA = TTB1.CODCOLIGADA
            AND TPRODUTODEF.CODTB1FAT = TTB1.CODTB1FAT
       LEFT JOIN TRELSLD(NOLOCK)
         ON TMOV.CODCOLIGADA = TRELSLD.CODCOLIGADA
            AND TMOV.CODFILIAL = TRELSLD.CODFILIAL
            AND TMOV.IDMOV = TRELSLD.IDMOV
            AND TITMMOV.IDPRD = TRELSLD.IDPRD
       LEFT JOIN TTMV(NOLOCK)
         ON TTMV.CODTMV = TMOV.CODTMV
            AND TTMV.CODCOLIGADA = TMOV.CODCOLIGADA
WHERE  TMOV.CODTMV LIKE ( '1.2.%' )
       AND TMOV.CODTMV NOT IN ( '1.2.02' )
       AND TMOV.CODCOLIGADA LIKE :CODCOLIGADA
       AND TMOV.CODFILIAL LIKE :CODFILIAL
       AND TMOV.DATAEMISSAO >= :DATA_INICIO_D
       AND TMOV.DATAEMISSAO <= :DATA_FIM_D
       AND TPRODUTO.TIPO = 'P'

  • Replies 4
  • Created
  • Last Reply

Top Posters In This Topic


  • Topic Count:  920
  • Topics Per Day:  0.13
  • Content Count:  9,054
  • Content Per Day:  1.33
  • Reputation:   339
  • Achievement Points:  108,799
  • Solved Content:  0
  • Days Won:  214
  • Status:  Offline
  • Age:  52
  • Device:  Windows

Posted

Olá. Não uso Oracle normalmente, mas verifique se seria isso: 

 

SELECT CASE
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 1 THEN '01-JAN'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 2 THEN '02-FEV'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 3 THEN '03-MAR'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 4 THEN '04-ABR'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 5 THEN '05-MAI'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 6 THEN '06-JUN'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 7 THEN '07-JUL'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 8 THEN '08-AGO'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 9 THEN '09-SET'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 10 THEN '10-OUT'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 11 THEN '11-NOV'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 12 THEN '12-DEZ'
       END AS MES,
       EXTRACT(YEAR FROM TMOV.DATASAIDA) AS ANO,
       TMOV.CODCOLIGADA,
       TMOV.CODFILIAL,
       CO.NOME AS "NOME COLIGADA",
       CO.NOMEFANTASIA AS "NOME FANTASIA COLIGADA",
       FI.NOME AS "NOME FILIAL",
       FI.NOMEFANTASIA AS "NOME FANTASIA FILIAL",
       TITMMOV.IDPRD AS "COD PRODUTO",
       TPRODUTO.DESCRICAO AS "NOME PRODUTO",
       TITMMOV.QUANTIDADE,
       TITMMOV.QUANTIDADETOTAL,
       TRELSLD.CUSTOMEDITEM AS "CUSTO MÉDIO",
       TITMMOV.CODCCUSTO AS "CENTRO DE CUSTO",
       GCCUSTO.NOME AS "NOME CENTRO DE CUSTO",
       TMOV.DATASAIDA AS "DATA SAÍDA ESTOQUE",
       TMOV.DATAEMISSAO,
       TMOV.IDMOV,
       CASE
         WHEN TPRDFIL.ESTOCAVEL = 1 THEN 'ESTOCAVEL'
         WHEN TPRDFIL.ESTOCAVEL = 0 THEN 'NAO ESTOCAVEL'
         WHEN TPRDFIL.ESTOCAVEL IS NULL THEN 'SEM INFORMAÇÃO DE ESTOCAVEL OU NÃO'
       END AS ESTOCAVEL,
       TMOV.CODTMV,
       TTB1.DESCRICAO AS "CLASSIF/CATEGORIA",
       CASE
         WHEN TMOV.STATUS = 'A' THEN 'Pendente / A Faturar'
         WHEN TMOV.STATUS = 'B' THEN 'Bloqueado'
         WHEN TMOV.STATUS = 'C' THEN 'Cancelado'
         WHEN TMOV.STATUS = 'F' THEN 'Recebido / Faturado'
         WHEN TMOV.STATUS = 'G' THEN 'Parcialmente Recebido / Parcialmente Faturado'
         WHEN TMOV.STATUS = 'N' THEN 'Normal'
         WHEN TMOV.STATUS = 'P' THEN 'Parcialmente Quitado'
         WHEN TMOV.STATUS = 'Q' THEN 'Quitado'
         WHEN TMOV.STATUS = 'R' THEN 'Não Processado'
         WHEN TMOV.STATUS = 'U' THEN 'Em Faturamento'
       END AS STATUS,
       TTMV.NOME AS "MOVIMENTO"
FROM TMOV
       INNER JOIN GCOLIGADA CO ON CO.CODCOLIGADA = TMOV.CODCOLIGADA
       INNER JOIN GFILIAL FI ON FI.CODCOLIGADA = CO.CODCOLIGADA AND FI.CODFILIAL = TMOV.CODFILIAL
       INNER JOIN TITMMOV ON TMOV.CODCOLIGADA = TITMMOV.CODCOLIGADA AND TMOV.IDMOV = TITMMOV.IDMOV
       INNER JOIN TPRODUTO ON TITMMOV.IDPRD = TPRODUTO.IDPRD
       INNER JOIN GCCUSTO ON TITMMOV.CODCCUSTO = GCCUSTO.CODCCUSTO AND TITMMOV.CODCOLIGADA = GCCUSTO.CODCOLIGADA
       LEFT JOIN TPRDFIL ON TITMMOV.CODCOLIGADA = TPRDFIL.CODCOLIGADA AND TITMMOV.IDPRD = TPRDFIL.IDPRD AND TMOV.CODFILIAL = TPRDFIL.CODFILIAL
       INNER JOIN TPRODUTODEF ON TITMMOV.CODCOLIGADA = TPRODUTODEF.CODCOLIGADA AND TITMMOV.IDPRD = TPRODUTODEF.IDPRD
       LEFT JOIN TTB1 ON TPRODUTODEF.CODCOLIGADA = TTB1.CODCOLIGADA AND TPRODUTODEF.CODTB1FAT = TTB1.CODTB1FAT
       LEFT JOIN TRELSLD ON TMOV.CODCOLIGADA = TRELSLD.CODCOLIGADA AND TMOV.CODFILIAL = TRELSLD.CODFILIAL AND TMOV.IDMOV = TRELSLD.IDMOV AND TITMMOV.IDPRD = TRELSLD.IDPRD
       LEFT JOIN TTMV ON TTMV.CODTMV = TMOV.CODTMV AND TTMV.CODCOLIGADA = TMOV.CODCOLIGADA
WHERE TMOV.CODTMV = '1.1.01'
       AND TMOV.CODCOLIGADA LIKE :CODCOLIGADA
       AND TMOV.CODFILIAL LIKE :CODFILIAL
       AND TMOV.DATAEMISSAO >= :DATA_INICIO_D
       AND TMOV.DATAEMISSAO <= :DATA_FIM_D
       AND TPRODUTO.TIPO = 'P'

UNION

SELECT CASE
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 1 THEN '01-JAN'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 2 THEN '02-FEV'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 3 THEN '03-MAR'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 4 THEN '04-ABR'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 5 THEN '05-MAI'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 6 THEN '06-JUN'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 7 THEN '07-JUL'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 8 THEN '08-AGO'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 9 THEN '09-SET'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 10 THEN '10-OUT'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 11 THEN '11-NOV'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 12 THEN '12-DEZ'
       END AS MES,
       EXTRACT(YEAR FROM TMOV.DATASAIDA) AS ANO,
       TMOV.CODCOLIGADA,
       TMOV.CODFILIAL,
       CO.NOME AS "NOME COLIGADA",
       CO.NOMEFANTASIA AS "NOME FANTASIA COLIGADA",
       FI.NOME AS "NOME FILIAL",
       FI.NOMEFANTASIA AS "NOME FANTASIA FILIAL",
       TITMMOV.IDPRD AS "COD PRODUTO",
       TPRODUTO.DESCRICAO AS "NOME PRODUTO",
       TITMMOV.QUANTIDADE,
       TITMMOV.QUANTIDADETOTAL,
       (SELECT CAST(PRECOUNITARIO AS NUMERIC(14,2)) AS PRECOUNITARIO 
        FROM TMOV TM
        INNER JOIN TITMMOV TIT ON TM.CODCOLIGADA = TIT.CODCOLIGADA AND TM.IDMOV = TIT.IDMOV
        WHERE TM.CODTMV LIKE '1.2.%'
          AND EXTRACT(YEAR FROM TM.DATACRIACAO) >= EXTRACT(YEAR FROM SYSDATE) - 1
          AND TM.CODCOLIGADA = TMOV.CODCOLIGADA
          AND TM.CODFILIAL = TMOV.CODFILIAL
          AND TIT.IDPRD = TITMMOV.IDPRD
        ORDER BY TM.DATACRIACAO DESC FETCH FIRST 1 ROWS ONLY) AS "CUSTO MÉDIO",
       TITMMOV.CODCCUSTO AS "CENTRO DE CUSTO",
       GCCUSTO.NOME AS "NOME CENTRO DE CUSTO",
       TMOV.DATASAIDA AS "DATA SAÍDA ESTOQUE",
       TMOV.DATAEMISSAO,
       TMOV.IDMOV,
       CASE
         WHEN TPRDFIL.ESTOCAVEL = 1 THEN 'ESTOCAVEL'
         WHEN TPRDFIL.ESTOCAVEL = 0 THEN 'NAO ESTOCAVEL'
         WHEN TPRDFIL.ESTOCAVEL IS NULL THEN 'SEM INFORMAÇÃO DE ESTOCAVEL OU NÃO'
       END AS ESTOCAVEL,
       TMOV.CODTMV,
       TTB1.DESCRICAO AS "CLASSIF/CATEGORIA",
       CASE
         WHEN TMOV.STATUS = 'A' THEN 'Pendente / A Faturar'
         WHEN TMOV.STATUS = 'B' THEN 'Bloqueado'
         WHEN TMOV.STATUS = 'C' THEN 'Cancelado'
         WHEN TMOV.STATUS = 'F' THEN 'Recebido / Faturado'
         WHEN TMOV.STATUS = 'G' THEN 'Parcialmente Recebido / Parcialmente Faturado'
         WHEN TMOV.STATUS = 'N' THEN 'Normal'
         WHEN TMOV.STATUS = 'P' THEN 'Parcialmente Quitado'
         WHEN TMOV.STATUS = 'Q' THEN 'Quitado'
         WHEN TMOV.STATUS = 'R' THEN 'Não Processado'
         WHEN TMOV.STATUS = 'U' THEN 'Em Faturamento'
       END AS STATUS,
       TTMV.NOME AS "MOVIMENTO"
FROM TMOV
       INNER JOIN GCOLIGADA CO ON CO.CODCOLIGADA = TMOV.CODCOLIGADA
       INNER JOIN GFILIAL FI ON FI.CODCOLIGADA = CO.CODCOLIGADA AND FI.CODFILIAL = TMOV.CODFILIAL
       INNER JOIN TITMMOV ON TMOV.CODCOLIGADA = TITMMOV.CODCOLIGADA AND TMOV.IDMOV = TITMMOV.IDMOV
       INNER JOIN TPRODUTO ON TITMMOV.IDPRD = TPRODUTO.IDPRD
       INNER JOIN GCCUSTO ON TITMMOV.CODCCUSTO = GCCUSTO.CODCCUSTO AND TITMMOV.CODCOLIGADA = GCCUSTO.CODCOLIGADA
       LEFT JOIN TPRDFIL ON TITMMOV.CODCOLIGADA = TPRDFIL.CODCOLIGADA AND TITMMOV.IDPRD = TPRDFIL.IDPRD AND TMOV.CODFILIAL = TPRDFIL.CODFILIAL
       INNER JOIN TPRODUTODEF ON TITMMOV.CODCOLIGADA = TPRODUTODEF.CODCOLIGADA AND TITMMOV.IDPRD = TPRODUTODEF.IDPRD
       LEFT JOIN TTB1 ON TPRODUTODEF.CODCOLIGADA = TTB1.CODCOLIGADA AND TPRODUTODEF.CODTB1FAT = TTB1.CODTB1FAT
       LEFT JOIN TRELSLD ON TMOV.CODCOLIGADA = TRELSLD.CODCOLIGADA AND TMOV.CODFILIAL = TRELSLD.CODFILIAL AND TMOV.IDMOV = TRELSLD.IDMOV AND TITMMOV.IDPRD = TRELSLD.IDPRD
       LEFT JOIN TTMV ON TTMV.CODTMV = TMOV.CODTMV AND TTMV.CODCOLIGADA = TMOV.CODCOLIGADA
WHERE TMOV.CODTMV LIKE '1.2.%'
       AND TMOV.CODTMV NOT IN ('1.2.02')
       AND TMOV.CODCOLIGADA LIKE :CODCOLIGADA
       AND TMOV.CODFILIAL LIKE :CODFILIAL
       AND TMOV.DATAEMISSAO >= :DATA_INICIO_D
       AND TMOV.DATAEMISSAO <= :DATA_FIM_D
       AND TPRODUTO.TIPO = 'P'
 


  • Topic Count:  59
  • Topics Per Day:  0.01
  • Content Count:  826
  • Content Per Day:  0.16
  • Reputation:   109
  • Achievement Points:  4,825
  • Solved Content:  0
  • Days Won:  76
  • Status:  Offline
  • Age:  61
  • Device:  Windows

Posted (edited)

Encontrei estes conversores online:

https://www.sqlines.com/online

https://extendsclass.com/sql-to-sql.html

image.png

Edited by omar
  • Like 1

  • Topic Count:  3
  • Topics Per Day:  0.01
  • Content Count:  5
  • Content Per Day:  0.02
  • Reputation:   0
  • Achievement Points:  60
  • Solved Content:  0
  • Days Won:  0
  • Status:  Offline
  • Age:  42
  • Device:  Windows

Posted

Pessoal, agradeço a ajuda e atenção de vocês. Conseguir salvar a sentença da seguinte forma:

 

SELECT CASE
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 1 THEN '01-JAN'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 2 THEN '02-FEV'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 3 THEN '03-MAR'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 4 THEN '04-ABR'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 5 THEN '05-MAI'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 6 THEN '06-JUN'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 7 THEN '07-JUL'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 8 THEN '08-AGO'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 9 THEN '09-SET'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 10 THEN '10-OUT'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 11 THEN '11-NOV'
         WHEN EXTRACT(MONTH FROM TMOV.DATASAIDA) = 12 THEN '12-DEZ'
       END                               AS MES,
       EXTRACT(YEAR FROM TMOV.DATASAIDA) AS ANO,
       TMOV.CODCOLIGADA,
       TMOV.CODFILIAL,
       CO.NOME                           AS NOME_COLIGADA,
       CO.NOMEFANTASIA                   AS NOME_FANTASIA_COLIGADA,
       FI.NOME                           AS NOME_FILIAL,
       FI.NOMEFANTASIA                   AS NOME_FANTASIA_FILIAL,
       TITMMOV.IDPRD                     AS COD_PRODUTO,
       TPRODUTO.DESCRICAO                AS NOME_PRODUTO,
       TITMMOV.QUANTIDADE,
       TITMMOV.QUANTIDADETOTAL           AS QUANTIDADE_CONSUMIDA, 
       TRELSLD.CUSTOMEDITEM              AS CUSTO_MEDIO,
       TITMMOV.CODCCUSTO                 AS CENTRO_DE_CUSTO,
       GCCUSTO.NOME                      AS NOME_CENTRO_DE_CUSTO,
       TMOV.DATASAIDA                    AS DATA_SAIDA_ESTOQUE,
       TMOV.DATAEMISSAO,
       TMOV.IDMOV,
       (TRELSLD.CUSTOMEDITEM *TITMMOV.QUANTIDADETOTAL) AS TOTAL_CUSTO,
       CASE
         WHEN TPRDFIL.ESTOCAVEL = 1 THEN 'ESTOCAVEL'
         WHEN TPRDFIL.ESTOCAVEL = 0 THEN 'NAO ESTOCAVEL'
         WHEN TPRDFIL.ESTOCAVEL IS NULL THEN 'SEM INFORMAÇÃO DE ESTOCAVEL OU NÃO'
       END                               AS ESTOCAVEL,
       TMOV.CODTMV,
       TTB1.DESCRICAO                    AS CLASSIF_CATEGORIA,
       CASE
         WHEN TMOV.STATUS = 'A' THEN 'Pendente / A Faturar'
         WHEN TMOV.STATUS = 'B' THEN 'Bloqueado'
         WHEN TMOV.STATUS = 'C' THEN 'Cancelado'
         WHEN TMOV.STATUS = 'F' THEN 'Recebido / Faturado'
         WHEN TMOV.STATUS = 'G' THEN 'Parcialmente Recebido / Parcialmente Faturado'
         WHEN TMOV.STATUS = 'N' THEN 'Normal'
         WHEN TMOV.STATUS = 'P' THEN 'Parcialmente Quitado'
         WHEN TMOV.STATUS = 'Q' THEN 'Quitado'
         WHEN TMOV.STATUS = 'R' THEN 'Não Processado'
         WHEN TMOV.STATUS = 'U' THEN 'Em Faturamento'
       END                               AS STATUS,
       TTMV.NOME                         AS MOVIMENTO
FROM   TMOV
       INNER JOIN GCOLIGADA CO
               ON CO.CODCOLIGADA = TMOV.CODCOLIGADA
       INNER JOIN GFILIAL FI
               ON FI.CODCOLIGADA = CO.CODCOLIGADA
                  AND FI.CODFILIAL = TMOV.CODFILIAL
       INNER JOIN TITMMOV
               ON TMOV.CODCOLIGADA = TITMMOV.CODCOLIGADA
                  AND TMOV.IDMOV = TITMMOV.IDMOV
       INNER JOIN TPRODUTO
               ON TITMMOV.IDPRD = TPRODUTO.IDPRD
       INNER JOIN GCCUSTO
               ON TITMMOV.CODCCUSTO = GCCUSTO.CODCCUSTO
                  AND TITMMOV.CODCOLIGADA = GCCUSTO.CODCOLIGADA
       LEFT JOIN TPRDFIL
              ON TITMMOV.CODCOLIGADA = TPRDFIL.CODCOLIGADA
                 AND TITMMOV.IDPRD = TPRDFIL.IDPRD
                 AND TMOV.CODFILIAL = TPRDFIL.CODFILIAL
       INNER JOIN TPRODUTODEF
               ON TITMMOV.CODCOLIGADA = TPRODUTODEF.CODCOLIGADA
                  AND TITMMOV.IDPRD = TPRODUTODEF.IDPRD
       LEFT JOIN TTB1
              ON TPRODUTODEF.CODCOLIGADA = TTB1.CODCOLIGADA
                 AND TPRODUTODEF.CODTB1FAT = TTB1.CODTB1FAT
       LEFT JOIN TRELSLD
              ON TMOV.CODCOLIGADA = TRELSLD.CODCOLIGADA
                 AND TMOV.CODFILIAL = TRELSLD.CODFILIAL
                 AND TMOV.IDMOV = TRELSLD.IDMOV
                 AND TITMMOV.IDPRD = TRELSLD.IDPRD
       LEFT JOIN TTMV
              ON TTMV.CODTMV = TMOV.CODTMV
                 AND TTMV.CODCOLIGADA = TMOV.CODCOLIGADA
                 WHERE  TMOV.CODTMV NOT LIKE '2.1%'
                 AND TMOV.CODTMV NOT LIKE '1.1%'
       AND TPRODUTO.TIPO = 'P'
       AND TMOV.DATAEMISSAO >= :DATA_INICIO_D
       AND TMOV.DATAEMISSAO <= :DATA_FIM_D
       AND TMOV.CODCOLIGADA = :CODCOLIGADA
       ORDER BY TITMMOV.QUANTIDADE, TITMMOV.QUANTIDADETOTAL DESC


  • Topic Count:  920
  • Topics Per Day:  0.13
  • Content Count:  9,054
  • Content Per Day:  1.33
  • Reputation:   339
  • Achievement Points:  108,799
  • Solved Content:  0
  • Days Won:  214
  • Status:  Offline
  • Age:  52
  • Device:  Windows

Posted

Ok, só um detalhe, na sua primeira sentença que enviou acima tinha duas partes, unidas com um UNION, e nesta sua nova, postada agora apenas uma parte 😸

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.