Array
(
)

diminuir frete no total da nota

Victor Pavia
   - 15 fev 2013

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

Martins
   - 16 fev 2013

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!

Victor Pavia
   - 16 fev 2013

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.

Alex Lekao
   - 16 fev 2013

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

Martins
   - 16 fev 2013

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.

Victor Pavia
   - 22 fev 2013

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

Joel Rodrigues
   - 22 fev 2013

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