diminuir frete no total da nota

15/02/2013

0

Pessoal,

Tenho esta query que calcula o total de notas fiscais. Porém quero diminuir o valor do frete (campo fretevenda na consulta) que é único para a nota.
No exemplo o frete vale 10,00. Nessa query esta diminuindo 100,00, pois esta somando 10,00 para cada item da nota e não no total. A nota possui 10 items. Se alguém puder dar uma força , fico muito grato.

select *,totnota1 - totprod as diferenca from(
select *,case when fretevenda is not null then (totnota - fretevenda) else totnota end as totnota1 from (
select tm.codfilial,tm.NUMEROMOV,f.nome,tm.IDMOV,tm.DATAEMISSAO,ttm.IDPRD,tp.codigoreduzido,tp.DESCRICAO,ttm.QUANTIDADE,ttm.PRECOUNITARIO as preconota
,ttm.precotabela as precoprod,cb.maxdesc,cb.acrescimo, (ttm.precounitario - ttm.precotabela) as difpreco,(ttm.precounitario * ttm.quantidade - ttm.precotabela * ttm.quantidade) as difprecotot, cb.qtdecesta
,ttm.precounitario*ttm.quantidade as totnota,ttm.precotabela*ttm.quantidade as totprod, CAST(replace(FRETEVENDA,',','.') as numeric(10,2)) as fretevenda
from TMOV tm
left join tmovcompl tmc on (tmc.idmov = tm.idmov)
inner join TITMMOV ttm on (ttm.IDMOV = tm.IDMOV)
inner join TPRD tp on (tp.IDPRD = ttm.IDPRD)
inner join FCFO f on (f.CODCFO = tm.codcfo)
left join FCFOCOMPL fc on (fc.codcfo = f.codcfo)
left join varejaocereais.dbo.cestabasica cb on (cb.codcesta = tmc.codigocestas collate database_default)
WHERE tm.DATAEMISSAO>='27/12/2012'
AND tm.DATAEMISSAO<='27/12/2012'

AND tm.STATUS <> 'C' AND tm.CODTMV = '2.2.01' and tm.codtmv <> '2.2.29' and tm.codtmv <>'2.2.04'

AND tm.codcfo not in('000337') and f.CODCFO <> '000337'
and f.codetd = 'MG'
and serie <> 'ECF' and tm.NUMEROMOV = '000023853'


and tm.codven1 = '0005'

)T1)T2
order by numeromov,dataemissao



Victor Pavia

Victor Pavia

Responder

Posts

16/02/2013

Perivaldo Martins

Amigo, amanheci meio lento hj, não compreendi direito o que o amigo deseja, vc poderia usar um exemplo mais claro? Você quer diminuir o valor do frete do total das notas, por nota, como é que você está querendo fazer?


Boa sorte e bons códigos!
Responder

16/02/2013

Victor Pavia

Algumas notas possuem uma taxa de frete embutida. Nessa consulta preciso mostrar o valor total da nota diminuindo o frete. Porém preciso mostrar também os items que compoem a nota. Nessa query o frete esta sendo calculado errado, pois esta multiplicando pela quantidade de items.

Ex: A nota vale 1000,00 e frete 10,00. São 10 items. O frete é embutido, ou seja, a nota vale 990,00, mas esta calculando 900,00. Esta multiplicando 10,00 pelo número de items da nota. Como se o frete fosse 100,00.
Responder

16/02/2013

Alex Lekao

Oi Vitor, bom dia!!!

Eh necessário usar realmente as tabelas temporárias igual vc ta fazendo?

se não me engano na segunda tabela temporária(interna t1) esta usando os fretes.

Da uma olhada e ve se resolve.

Espero ter ajudado.

Abraco.

Alex - Lekao
Responder

16/02/2013

Perivaldo Martins

Esse projeto é seu ou vc está apenas fazendo a manutenção? Teria como vc exibir uma imagem de como está acontecendo e como vc gostaria q ficasse, talvez possamos melhorar essa consulta, só uma sugestão. Ao chegar em casa olharei essa consulta com mais calma.

Boa sorte bons códigos.
Responder

22/02/2013

Victor Pavia

resolvido.
Diminui o frete pegando o primeiro item da nota. Deu certo. Obrigado.
Responder

22/02/2013

Joel Rodrigues

Valeu pelo retorno, amigo.
Sendo assim, vou encerrar o tópico.
Abraço.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar