Untitled
unknown
plain_text
10 months ago
9.7 kB
5
Indexable
insert into monx_dfitem
select a.nroempresa nroempresaerp,
decode(a.nroserieecf, 'NF', nvl(a.numeronf, a.numerodf), a.numerodf) numerodf,
nvl(a.serienf, a.seriedf) seriedf,
a.seqitemdf,
decode(a.nroserieecf, 'NF', a.nroserieecf, a.nroserieecf || to_char(a.dtamovimento, 'yymmdd')) nroserieecf,
a.dtamovimento,
a.codproduto seqproduto,
a.qtdembalagem,
a.codacesso codproduto,
a.nrotributacao codtributacao,
case
when a.seriedf != 'NF' or a.modelodf = '65' then
'SN'
else
decode(to_char(fn_getparametropdv('NotaFiscal', 'ConsideraConsumidorFinalCGO', b.nroempresapdv, a.nrocheckout)), 'S',
decode(a.modelodf, '55', decode(m.indconsumidorfinal, 'S', 'SN', 'SC'), 'SN'),
decode(a.modelodf, '55', decode(f.indcontribicms, 'S', 'SC', 'SN'), 'SN'))
end tiptributacao,
nvl(a.situacaonf, d.situacaonf) situacaonf,
case
when not a.nrobico is null then
(select max(b1.seqlocal)
from mrl_postobico a1, mrl_postotanque b1
where a1.nroempresa = a.nroempresa
and a1.nrobico = a.nrobico
and b1.nroempresa = a1.nroempresa
and b1.nrotanque = a1.nrotanque)
when not i.seqlocal is null and fc5maxparametro('BAIXA_PDV', a.nroempresa, 'UTILIZA_LOCAL_BAIXA_PEDIDO_PDV') = 'S' then
i.seqlocal
else
decode(fc5maxparametro('BAIXA_PDV', a.nroempresa, 'LOCAL_BAIXA_PRODUTO_PDV'), 'C', nvl(g.localproduto, nvl(k.locsaida, c.locsaida)), nvl(k.locsaida, c.locsaida))
end locatuestq,
a.quantidade,
case
when (a.vlripi > a.vlracrescimo) then
vlritem - (a.vlripi - a.vlracrescimo)
else a.vlritem
end vlritem,
a.vlrtotisento,
a.vlrtotoutra,
case
when d.ufempresa = 'RJ' and substr(d.situacaonf, 2, 2) = '51' and a.perdiferido = 100 then
a.bascalcicms + nvl(a.vlrtoticmsdif, 0)
when (a.vlripi > 0) and (f.fisicajuridica in ('F','J')) and (f.indcontribicms = 'N') then
nvl(a.basecalcipi + a.vlripi, 0)
when (a.vlracrescimo > 0) and (a.vlripi > a.vlracrescimo) and (f.fisicajuridica = 'F') then
nvl(a.basecalcipi, 0)
when (a.vlripi > 0) and (f.fisicajuridica = 'J') and (f.indcontribicms = 'S') then
nvl(a.basecalcipi - a.vlrtotisento - a.vlrtotoutra, 0)
else nvl(a.bascalcicms, 0)
end bascalcicms,
a.peraliquotaicms,
a.basecalcicmsst,
a.peraliquotaicmsst,
a.vlricmsst,
nvl(a.basecalcipi, 0) basecalcipi,
a.peraliquotaipi,
a.vlrdesconto,
case
when (a.vlripi > a.vlracrescimo) then
a.vlripi
else nvl(a.vlracrescimo, 0)
end vlracrescimo,
0 vlracrfinanceiro,
0 vlrtotcomissao,
0 vlrdescforanf,
0 vlracrforanf,
a.statusitem,
a.cfop,
'S' indreplicacao,
a.vlrtotisentoipi,
a.vlrtotoutraipi,
a.vlripi,
a.seqvendedor nrorepitem,
a.vlrdescicms,
a.basefcpicms,
a.peraliqfcpicms,
a.vlrfcpicms,
a.basefcpst,
a.peraliqfcpst,
a.vlrfcpst,
a.vlritemnormal,
a.vlrdescsubtotal,
a.nropedido nropedidovenda,
a.seqpromocpdv,
a.seqregraincentivo,
a.nrosegmento nrosegitem,
a.seqidprescritor,
a.dtareceita,
a.seqloteestoque,
a.nronotificacao,
a.vlrbaseiss,
a.peraliqiss,
a.vlrtotiss,
a.nrobico,
(select max(i1.vlrfretetransp)
from mad_pedvendaitem i1
where i1.nroempresa = i.nroempresa
and i1.nropedvenda = i.nropedvenda
and i1.seqproduto = a.codproduto
and i1.qtdembalagem = a.qtdembalagem) vlrfretetransp,
a.seqordemnfe,
a.seqprodutofinal,
a.quantidadeprodfinal,
a.tipopromocpdv,
a.precovalidnormal vlrtotalvdanormal,
decode(a.seqprodutofinal, null, 'N', decode(vsbaixaprodcomposto, 'F', 'S', 'N')) indconvertcomponente,
null vlrfreteitemrateio,
null vlrsegurorateiodanfe,
null vlrdespesarateiodanfe,
decode(
(select max(a1.seqtipoacrescdescto)
from monx_doctoacrescdescto a1
where a1.nroempresa = a.nroempresapdv
and a1.nrocheckout = a.nrocheckoutpdv
and a1.seqdocto = a.seqdoctopdv
and a1.seqtipoacrescdescto = 41), 41, decode(a.modelodf, '55', l.indsomafreteicms, 'N'), l.indsomafreteicms) indsomafreteicms,
a.medpacientecid,
a.usoprolongado,
a.imei,
decode(vsbaixaestoquenotaassincrono, 'S', 'P', null) indsomentevda,
null qtdverbapdv,
null vlrverbapdv,
null vlrpiscofinsverbapdv,
a.perredbcicmsefet,
a.vlrbaseicmsefet,
a.peraliqicmsefet,
a.vlricmsefet,
case
when (a.vlripi > a.vlracrescimo) then
a.vlrunitarioecf - ((a.vlripi - a.vlracrescimo) / a.quantidade)
else a.vlrunitarioecf
end vlrunitarioecf,
case
when (a.vlripi > a.vlracrescimo) then
0
else (a.vlracrescimo - nvl(a.vlripi, 0))
end vlrtotdespacessoria,
a.motivodesoneracao indmotivodesoicms,
a.codajusteinfad codajusteefd,
a.vlrtoticmsdeson vlrtoticmsdesonoutros,
a.vlrtoticmsdif vlricmsdiferido,
a.perdiferido,
d.indcalcicmsdesonoutros,
d.peraliqicmsdeson,
a.indvdaproximovencto,
a.seqcenariotrib,
a.seqcenariotribconsulta,
a.codobservacaoajusteefd,
case
when (a.vlripi > 0) and (a.vlripi >= a.vlracrescimo) then
null
else decode(a.modelodf, '65', a.vlricms, decode(nvl(a.vlrtoticmsdif, 0), 0, a.vlricms, null))
end vlricms,
d.situacaonfipi,
case
when d.ufempresa = 'RJ' and substr(d.situacaonf, 2, 2) = '51' then
a.peraliquotaicms
end peraliqicmsorig,
a.vlripiprecovda,
0 vlrfreterateiopdv,
0 vlrdesptributitem,
0 vlrdespntributitem
from mfl_cupomfiscal a,
max_empresa b,
mrl_produtoempresa c,
map_tributacaouf d,
ge_pessoa e,
ge_pessoa f,
mfl_checkout g,
mrl_cliente h,
mad_pedvenda i,
mrl_cliente j,
max_cgolocalemp k,
mad_segmento l,
max_codgeraloper m
where a.nroempresa = vnnroempresaerp
and a.dtamovimento = pddtamovimento
and a.statusitem in ('C', 'V')
and a.indreplicacao = 'x'
and b.nroempresa = a.nroempresa
and not a.codproduto in (nvl(b.seqprodfrete, -1), nvl(b.seqprodseguro, -1), nvl(b.seqproddespesa, -1))
and c.seqproduto = a.codproduto
and c.nroempresa = b.nroempresa
and d.nrotributacao = a.nrotributacao
and d.ufempresa = b.uf
and d.ufclientefornec = decode(a.modelodf, '65', b.uf,
decode(a.seriedf, 'NF',
decode(to_char(fn_getparametropdv('NotaFiscal',
'ConsideraTributacaoDestino',
a.nroempresa,
a.nrocheckout)),
'S', f.uf,
decode(m.indconsumidorfinal, 'N',
decode(m.indpresenca, 'N',
decode(m.indvendainterpresencial, 'N',
f.uf, b.uf), b.uf), b.uf)),
b.uf))
and d.tiptributacao = decode(to_char(fn_getparametropdv('NotaFiscal', 'ConsideraConsumidorFinalCGO', b.nroempresapdv, a.nrocheckout)), 'S',
decode(a.modelodf, '55', decode(m.indconsumidorfinal, 'S', 'SN', 'SC'), 'SN'),
decode(a.modelodf, '55', decode(f.indcontribicms, 'S', 'SC', 'SN'), 'SN'))
and d.nroregtributacao = nvl(a.nroregtributacao, nvl(decode(a.modelodf, '65', j.nroregtributacaocli, h.nroregtributacaocli), (select min(nroregtributacao) from map_regimetributacao)))
and g.nrocheckout(+) = a.nrocheckout
and g.nroempresa(+) = a.nroempresa
and e.seqpessoa = b.seqpessoaemp
and f.seqpessoa(+) = a.seqpessoa
and h.seqpessoa(+) = a.seqpessoa
and i.nroempresa(+) = a.nroempresa
and i.nropedvenda(+) = a.nropedido
and j.seqpessoa(+) = b.seqpessoaemp
and k.codgeraloper(+) = a.codgeraloper
and k.nroempresa(+) = a.nroempresa
and l.nrosegmento = a.nrosegmento
and m.codgeraloper(+) = a.codgeraloper
order by a.codproduto, a.qtdembalagem;Editor is loading...
Leave a Comment