Usuário com melhor resposta
Conversão Tipo de dados

Pergunta
-
Bom dia,
Galera!
Será que podem ajudar, tenho a seguinte Query abaixo que quanto rodo na minha ferramenta de relatório exibe a seguinte mensagem:
SELECT INF.ProdCodEstr, INF.ItNFProdNome, SUM(CLLAINF.CtrlLoteLocArmItNFQtd) AS CtrlLoteLocArmItNFQtd, ELA.EstqLocArmazLocaliz, (P.USERAcondProd / SUM(CLLAINF.CtrlLoteLocArmItNFQtd)) AS Paletes FROM NOTA_FISCAL NF WITH(NOLOCK), ITEM_NF INF WITH(NOLOCK), ENTIDADE E WITH(NOLOCK), CTRL_LOTE_LOC_ARM_IT_NF CLLAINF WITH(NOLOCK), PROD_UNID_MED PUM WITH(NOLOCK), ESTQ_LOC_ARMAZ ELA WITH(NOLOCK), Produto P WITH(NOLOCK) WHERE NF.NFDataEmis >= '20170223' AND NF.NFDataEmis <= '20170223' AND NF.EmpCod = 1 AND NF.NFCancelada = 'Não' AND NF.EmpCod = INF.EmpCod AND NF.CtrlDFModForm = INF.CtrlDFModForm AND NF.CtrlDFSerie = INF.CtrlDFSerie AND NF.NFNum = INF.NFNum AND NF.NFTranspEntCod = E.EntCod AND INF.EmpCod = CLLAINF.EmpCod AND INF.CtrlDFModForm = CLLAINF.CtrlDFModForm AND INF.CtrlDFSerie = CLLAINF.CtrlDFSerie AND INF.NFNum = CLLAINF.NFNum AND INF.ItNFSeq = CLLAINF.ItNFSeq AND INF.ProdCodEstr = PUM.ProdCodEstr AND PUM.ProdUnidMedCod = 'CX' AND CLLAINF.ProdCodEstr = ELA.ProdCodEstr AND NF.EmpCod = ELA.EmpCod AND ELA.LocArmazCodEstr = CLLAINF.LocArmazCodEstr AND P.ProdCodEstr = INF.ProdCodEstr GROUP BY INF.ProdCodEstr, INF.ItNFProdNome, ELA.EstqLocArmazLocaliz,P.USERAcondProd ORDER BY (P.USERAcondProd / SUM(CLLAINF.CtrlLoteLocArmItNFQtd)) Desc
Respostas
-
A partir do SQL Server 2012 você pode utilizar a função Format:
FORMAT(P.USERAcondProd / SUM(CLLAINF.CtrlLoteLocArmItNFQtd), 'N2') AS Paletes
Nas versões anteriores experimente dessa forma:
convert(varchar(50), cast(P.USERAcondProd / SUM(CLLAINF.CtrlLoteLocArmItNFQtd) as money), 1) AS Paletes
Espero que ajude
Assinatura: http://www.imoveisemexposicao.com.br
- Editado gapimex quinta-feira, 23 de fevereiro de 2017 15:10
- Marcado como Resposta Leandro Massena Moraes quinta-feira, 23 de fevereiro de 2017 16:12
Todas as Respostas
-
Bom dia,
Leandro, acredito que seria melhor fazer a alteração na sua ferramenta de relatório, mas se você realmente quiser fazer isso na query experimente dessa forma:
CAST(P.USERAcondProd / SUM(CLLAINF.CtrlLoteLocArmItNFQtd) AS VARCHAR(50)) AS Paletes
Espero que ajude
Assinatura: http://www.imoveisemexposicao.com.br
-
Bom dia,
Gapimex, não consigo alterar na ferramenta de relatório porque é uma ferramenta de terceiro, fiz um teste da forma que você informou e foi satisfatório, consigo formatar para apresentar o resultado desta coluna com duas casas após a vírgula?
-
A partir do SQL Server 2012 você pode utilizar a função Format:
FORMAT(P.USERAcondProd / SUM(CLLAINF.CtrlLoteLocArmItNFQtd), 'N2') AS Paletes
Nas versões anteriores experimente dessa forma:
convert(varchar(50), cast(P.USERAcondProd / SUM(CLLAINF.CtrlLoteLocArmItNFQtd) as money), 1) AS Paletes
Espero que ajude
Assinatura: http://www.imoveisemexposicao.com.br
- Editado gapimex quinta-feira, 23 de fevereiro de 2017 15:10
- Marcado como Resposta Leandro Massena Moraes quinta-feira, 23 de fevereiro de 2017 16:12
-