Módulo: DOC. EXPORTAÇÃO
Funcionalidade: Registro de Exportação (RE)
Data/Hora da Publicação: 27/11/2005 00:00:00
Data/Hora Última Alteração: 21/02/2011 13:51:06
Descrição da Nota: O VALOR DE FRETE REAL NA PASTA DE ORDENS DE VENDA COM ERRO.
Sintoma
Em alguns processos, quando cria o embarque, o valor de Frete Real na pasta de ordens de venda
(/PWS/ZYCET002 - VLFRETE_R) VEM ERRADO, duplicando ou às vezes triplicando o valor de Frete.
Solução
Ajuste no Rateio de Itens do Embarque.
6.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 00356 Data: 27/11/2005 Hora: 11:36:57
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 00356
Categoria : Erro de Programa
Prioridade : Alta
Versão PW.CE : 6.0
Pacote : 00021
Agrupamento : 00089
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
00207 - 00001 - 6.0 - 00021 - CÁLCULO DOS VALORES INCORRETO NO RE
00264 - 00002 - 6.0 - 00021 - RE AGRUPADO POR NCM
00286 - 00003 - 6.0 - 00021 - SELEÇÃO INCORRETA DE PARÂMETROS DA TABELA /PWS/ZYCET145
00291 - 00004 - 6.0 - 00021 - VALORES DO RE ERRADOS QUANDO FATURA-SE A ORDEM DE VENDA
00315 - 00005 - 6.0 - 00021 - ERRO NOS VALORES DOS ANEXOS DO RE
00355 - 00006 - 6.0 - 00021 - DADOS DA NOMEAÇÃO NO EMBARQUE DE EXPORTAÇÃO
----------------------------------------------------------------------------------------------------
O VALOR DE FRETE REAL NA PASTA DE ORDENS DE VENDA COM ERRO.
----------------------------------------------------------------------------------------------------
Palavras Chave:
EXPORTAÇÃO - EMBARQUE - RE - VALOR DE FRETE
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/LZYCEGF6F01
REPS /PWS/MZYCE003F01
REPS /PWS/MZYCE041F01
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/LZYCEGF6F01
...
v_desc TYPE p DECIMALS 4,
v_acre TYPE p DECIMALS 4,
v_comi TYPE p DECIMALS 4,
v_vlme LIKE itab_final-vlme.
DATA: wa_final LIKE itab_final.
* >> Início da inclusão: FORM AJUSTA_RATEIO
DATA: BEGIN OF itab_008 OCCURS 0,
proccond LIKE /pws/zycet156-proccond,
vlme_f LIKE /pws/zycet008-vlme_f,
END OF itab_008.
* << Fim da inclusão
CLEAR: itemfre,
itemseg,
itemcomi,
itemdesp,
itemacre,
...
...
itemdesc_t = itemdesc_t + itab_zycet008-vlme_f.
v_desc = v_desc + itab_zycet008-vlme_f.
ENDIF.
ENDIF.
IF itemdesc_t GT 0.
* >> Início da exclusão: FORM AJUSTA_RATEIO
itemdesc_t = itemdesc * ( -1 ).
* << Fim da exclusão
* >> Início da inclusão: FORM AJUSTA_RATEIO
itemdesc_t = itemdesc_t * ( -1 ).
* << Fim da inclusão
v_desc = v_desc * ( -1 ).
ENDIF.
ENDCASE.
ENDIF.
* >> Início da inclusão: FORM AJUSTA_RATEIO
MOVE itab_zycet156-proccond TO itab_008-proccond.
MOVE itab_zycet008-vlme_f TO itab_008-vlme_f.
COLLECT itab_008.
* << Fim da inclusão
ENDLOOP.
IF itemfre_t NE 0.
itemfre = itemfre_t.
ENDIF.
IF itemseg_t NE 0.
...
...
v_desp,
v_desc,
v_acre,
v_comi.
LOOP AT itab_final.
* >> Início da inclusão: FORM AJUSTA_RATEIO
LOOP AT itab_008.
* << Fim da inclusão
* >> Início da exclusão: FORM AJUSTA_RATEIO
IF NOT v_fobtt IS INITIAL.
itab_final-vlfob = itab_final-vlfob + v_fobtt.
ENDIF.
* << Fim da exclusão
* >> Início da inclusão: FORM AJUSTA_RATEIO
READ TABLE itab_zycet156 WITH KEY proccond = itab_008-proccond.
CHECK sy-subrc IS INITIAL.
CHECK itab_zycet156-rateio EQ 'VLR'.
CASE itab_zycet156-proccond.
* << Fim da inclusão
* >> Início da exclusão: FORM AJUSTA_RATEIO
IF NOT itemfre_t IS INITIAL.
* << Fim da exclusão
* >> Início da inclusão: FORM AJUSTA_RATEIO
WHEN 'FRT'.
CHECK NOT itemfre_t IS INITIAL.
* << Fim da inclusão
itab_final-vlfrete_r = ( itemfre * itab_final-vlme ) / v_vlme.
v_fre = v_fre + itab_final-vlfrete_r.
* >> Início da exclusão: FORM AJUSTA_RATEIO
ENDIF.
* << Fim da exclusão
* >> Início da inclusão: FORM AJUSTA_RATEIO
WHEN 'SEG'.
CHECK NOT itemseg_t IS INITIAL.
* << Fim da inclusão
* >> Início da exclusão: FORM AJUSTA_RATEIO
IF NOT itemseg_t IS INITIAL.
itab_final-vlseguro_r = ( itemseg * itab_final-vlme ) / v_vlme.
* << Fim da exclusão
* >> Início da inclusão: FORM AJUSTA_RATEIO
itab_final-vlseguro_r = ( itemseg * itab_final-vlme ) /
v_vlme.
* << Fim da inclusão
v_seg = v_seg + itab_final-vlseguro_r.
* >> Início da exclusão: FORM AJUSTA_RATEIO
ENDIF.
IF NOT itemcomi_t IS INITIAL.
itab_final-vlagente_r = ( itemcomi * itab_final-vlme ) / v_vlme.
* << Fim da exclusão
* >> Início da inclusão: FORM AJUSTA_RATEIO
WHEN 'OUT' OR ' '.
CHECK NOT itemdesp_t IS INITIAL.
* << Fim da inclusão
* >> Início da exclusão: FORM AJUSTA_RATEIO
v_comi = v_comi + itab_final-vlagente_r.
ENDIF.
IF NOT itemdesp_t IS INITIAL.
* << Fim da exclusão
itab_final-vlod_r = ( itemdesp * itab_final-vlme ) / v_vlme.
v_desp = v_desp + itab_final-vlod_r.
* >> Início da exclusão: FORM AJUSTA_RATEIO
ENDIF.
* << Fim da exclusão
* >> Início da inclusão: FORM AJUSTA_RATEIO
WHEN 'DES'.
CHECK NOT itemdesc_t IS INITIAL.
* << Fim da inclusão
* >> Início da exclusão: FORM AJUSTA_RATEIO
IF NOT itemdesc_t IS INITIAL.
* << Fim da exclusão
itab_final-vldesconto_r = ( itemdesc * itab_final-vlme ) /
v_vlme.
v_desc = v_desc + itab_final-vldesconto_r.
* >> Início da exclusão: FORM AJUSTA_RATEIO
ENDIF.
* << Fim da exclusão
* >> Início da inclusão: FORM AJUSTA_RATEIO
WHEN 'ACR'.
CHECK NOT itemacre_t IS INITIAL.
* << Fim da inclusão
* >> Início da exclusão: FORM AJUSTA_RATEIO
IF NOT itemacre_t IS INITIAL.
* << Fim da exclusão
itab_final-vlacrescimo_r = ( itemacre * itab_final-vlme ) /
v_vlme.
v_acre = v_acre + itab_final-vlacrescimo_r.
* >> Início da exclusão: FORM AJUSTA_RATEIO
ENDIF.
* << Fim da exclusão
* >> Início da inclusão: FORM AJUSTA_RATEIO
WHEN 'COM'.
CHECK NOT itemcomi_t IS INITIAL.
itab_final-vlagente_r = ( itemcomi * itab_final-vlme ) /
v_vlme.
v_comi = v_comi + itab_final-vlagente_r.
WHEN OTHERS.
ENDCASE.
* << Fim da inclusão
MODIFY itab_final.
* >> Início da inclusão: FORM AJUSTA_RATEIO
ENDLOOP.
* << Fim da inclusão
ENDLOOP.
DESCRIBE TABLE itab_final LINES v_cont.
READ TABLE itab_final INDEX v_cont.
CHECK sy-subrc IS INITIAL.
wa_final = itab_final.
* >> Início da exclusão: FORM AJUSTA_RATEIO
LOOP AT itab_zycet156.
READ TABLE itab_zycet008 WITH KEY codigo = itab_zycet156-codigo.
* << Fim da exclusão
* >> Início da inclusão: FORM AJUSTA_RATEIO
LOOP AT itab_008.
READ TABLE itab_zycet156 WITH KEY proccond = itab_008-proccond.
* << Fim da inclusão
CHECK sy-subrc IS INITIAL.
CASE itab_zycet156-proccond.
WHEN 'FRT'.
* >> Início da exclusão: FORM AJUSTA_RATEIO
IF v_fre > itab_zycet008-vlme_f.
* << Fim da exclusão
* >> Início da inclusão: FORM AJUSTA_RATEIO
CHECK NOT v_fre IS INITIAL.
CHECK v_fre NE itab_008-vlme_f.
* << Fim da inclusão
itab_final-vlfrete_r = itab_final-vlfrete_r -
* >> Início da exclusão: FORM AJUSTA_RATEIO
( v_fre - itab_zycet008-vlme_f ).
ELSEIF v_fre < itab_zycet008-vlme_f.
itab_final-vlfrete_r = itab_final-vlfrete_r +
( itab_zycet008-vlme_f - v_fre ).
* << Fim da exclusão
* >> Início da inclusão: FORM AJUSTA_RATEIO
( v_fre - itab_008-vlme_f ).
* << Fim da inclusão
* >> Início da exclusão: FORM AJUSTA_RATEIO
ELSE.
itab_final-vlfrete_r = wa_final-vlfrete_r.
ENDIF.
* << Fim da exclusão
WHEN 'SEG'.
* >> Início da exclusão: FORM AJUSTA_RATEIO
IF v_seg > itab_zycet008-vlme_f.
* << Fim da exclusão
* >> Início da inclusão: FORM AJUSTA_RATEIO
CHECK NOT v_seg IS INITIAL.
CHECK v_seg NE itab_008-vlme_f.
* << Fim da inclusão
itab_final-vlseguro_r = itab_final-vlseguro_r -
* >> Início da exclusão: FORM AJUSTA_RATEIO
( v_seg - itab_zycet008-vlme_f ).
ELSEIF v_seg < itab_zycet008-vlme_f.
itab_final-vlseguro_r = itab_final-vlseguro_r +
( itab_zycet008-vlme_f - v_seg ).
* << Fim da exclusão
* >> Início da inclusão: FORM AJUSTA_RATEIO
( v_seg - itab_008-vlme_f ).
* << Fim da inclusão
* >> Início da exclusão: FORM AJUSTA_RATEIO
ELSE.
itab_final-vlseguro_r = wa_final-vlseguro_r.
ENDIF.
* << Fim da exclusão
WHEN 'OUT'.
* >> Início da exclusão: FORM AJUSTA_RATEIO
IF v_desp > itab_zycet008-vlme_f.
* << Fim da exclusão
* >> Início da inclusão: FORM AJUSTA_RATEIO
CHECK NOT v_desp IS INITIAL.
CHECK v_fre NE itab_008-vlme_f.
* << Fim da inclusão
itab_final-vlod_r = itab_final-vlod_r -
* >> Início da exclusão: FORM AJUSTA_RATEIO
( v_desp - itab_zycet008-vlme_f ).
ELSEIF v_desp < itab_zycet008-vlme_f.
itab_final-vlod_r = itab_final-vlod_r +
( itab_zycet008-vlme_f - v_desp ).
* << Fim da exclusão
* >> Início da inclusão: FORM AJUSTA_RATEIO
( v_desp - itab_008-vlme_f ).
* << Fim da inclusão
* >> Início da exclusão: FORM AJUSTA_RATEIO
ELSE.
itab_final-vlod_r = wa_final-vlod_r.
ENDIF.
* << Fim da exclusão
WHEN 'DES'.
* >> Início da exclusão: FORM AJUSTA_RATEIO
IF v_desc > itab_zycet008-vlme_f.
* << Fim da exclusão
* >> Início da inclusão: FORM AJUSTA_RATEIO
CHECK NOT v_desc IS INITIAL.
CHECK v_desc NE itab_008-vlme_f.
* << Fim da inclusão
itab_final-vldesconto_r = itab_final-vldesconto_r -
* >> Início da exclusão: FORM AJUSTA_RATEIO
( v_desc - itab_zycet008-vlme_f ).
ELSEIF v_desc < itab_zycet008-vlme_f.
itab_final-vldesconto_r = itab_final-vldesconto_r +
( itab_zycet008-vlme_f - v_desc ).
* << Fim da exclusão
* >> Início da inclusão: FORM AJUSTA_RATEIO
( v_desc + itab_008-vlme_f ).
* << Fim da inclusão
* >> Início da exclusão: FORM AJUSTA_RATEIO
ELSE.
itab_final-vldesconto_r = wa_final-vldesconto_r.
ENDIF.
* << Fim da exclusão
WHEN 'ACR'.
* >> Início da exclusão: FORM AJUSTA_RATEIO
IF v_acre > itab_zycet008-vlme_f.
* << Fim da exclusão
* >> Início da inclusão: FORM AJUSTA_RATEIO
CHECK NOT v_acre IS INITIAL.
CHECK v_acre NE itab_008-vlme_f.
* << Fim da inclusão
itab_final-vlacrescimo_r = itab_final-vlacrescimo_r -
* >> Início da exclusão: FORM AJUSTA_RATEIO
( v_acre - itab_zycet008-vlme_f ).
ELSEIF v_acre < itab_zycet008-vlme_f.
itab_final-vlacrescimo_r = itab_final-vlacrescimo_r +
( itab_zycet008-vlme_f - v_acre ).
* << Fim da exclusão
* >> Início da inclusão: FORM AJUSTA_RATEIO
( v_acre - itab_008-vlme_f ).
* << Fim da inclusão
* >> Início da exclusão: FORM AJUSTA_RATEIO
ELSE.
itab_final-vlacrescimo_r = wa_final-vlacrescimo_r.
ENDIF.
* << Fim da exclusão
WHEN 'COM'.
* >> Início da exclusão: FORM AJUSTA_RATEIO
IF v_comi > itab_zycet008-vlme_f.
* << Fim da exclusão
* >> Início da inclusão: FORM AJUSTA_RATEIO
CHECK NOT v_comi IS INITIAL.
CHECK v_comi NE itab_008-vlme_f.
* << Fim da inclusão
itab_final-vlagente_r = itab_final-vlagente_r -
* >> Início da exclusão: FORM AJUSTA_RATEIO
( v_comi - itab_zycet008-vlme_f ).
ELSEIF v_comi < itab_zycet008-vlme_f.
itab_final-vlagente_r = itab_final-vlagente_r +
( itab_zycet008-vlme_f - v_comi ).
* << Fim da exclusão
* >> Início da inclusão: FORM AJUSTA_RATEIO
( v_comi - itab_008-vlme_f ).
* << Fim da inclusão
* >> Início da exclusão: FORM AJUSTA_RATEIO
ELSE.
itab_final-vlagente_r = wa_final-vlagente_r.
ENDIF.
* << Fim da exclusão
ENDCASE.
ENDLOOP.
* >> Início da inclusão: FORM AJUSTA_RATEIO
CHECK itab_final NE wa_final.
* << Fim da inclusão
MODIFY itab_final INDEX v_cont.
ENDFORM.
FORM carrega_itab_zycet002 TABLES itab_final STRUCTURE itab_final
itab_zycet002 STRUCTURE itab_zycet002.
LOOP AT itab_final.
...
...
v_fob2 = v_fob.
IF itab_zycet065-frete EQ 'X'.
v_fob2 = ( v_fob2 + /pws/zycee313-vlme_frt ).
ENDIF.
IF itab_zycet065-seguro EQ 'X'.
* >> Início da exclusão: FORM TRATA_DESPESAS
v_fob2 = ( v_fob2 + /pws/zycee313-vlme_frt ).
* << Fim da exclusão
* >> Início da inclusão: FORM TRATA_DESPESAS
v_fob2 = ( v_fob2 + /pws/zycee313-vlme_seg ).
* << Fim da inclusão
ENDIF.
IF itab_zycet065-outras_desp EQ 'X'.
v_fob2 = ( v_fob2 + /pws/zycee313-vlme_out ).
ENDIF.
IF itab_zycet065-comissao EQ 'X'.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCE003F01
...
TABLES
itab_zycet002 = itab_zycet002_rat
itab_zycet008 = itab_zycet008_rat.
LOOP AT itab_zycet002.
v_tabix = sy-tabix.
* >> Início da exclusão: FORM ATUALIZA_RATEIO_ITENS
IF itab_zycet002-devolvido_t EQ 'X'.
* << Fim da exclusão
* >> Início da inclusão: FORM ATUALIZA_RATEIO_ITENS
IF itab_zycet002-devolvido_t EQ 'X' or
itab_zycet002-estorno EQ 'X' or
itab_zycet002-estornado EQ 'X'.
* << Fim da inclusão
CLEAR: itab_zycet002-vlagente_r,
itab_zycet002-vlseguro_r,
itab_zycet002-vldesconto_r,
itab_zycet002-vlacrescimo_r,
itab_zycet002-vlfrete_r,
...
...
ENDIF.
IF NOT itab_zycet002-vlacrescimo_r IS INITIAL.
ADD itab_zycet002-vlacrescimo_r TO itab_zycet002-vlemb.
ENDIF.
IF NOT itab_zycet002-vldesconto_r IS INITIAL.
* >> Início da exclusão: FORM ATUALIZA_RATEIO_ITENS
SUBTRACT itab_zycet002-vldesconto_r FROM itab_zycet002-vlemb.
* << Fim da exclusão
* >> Início da inclusão: FORM ATUALIZA_RATEIO_ITENS
itab_zycet002-vlemb = itab_zycet002-vlemb -
abs( itab_zycet002-vldesconto_r ).
* << Fim da inclusão
ENDIF.
READ TABLE itab_zycet065 WITH KEY inco1 = /pws/zycee001-inco1.
IF sy-subrc EQ 0.
IF /pws/zycee001-tpcalc EQ '0'.
IF itab_zycet065-frete EQ 'X'.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCE041F01
...
itab_zycet118-netpr.
ELSE.
itab_zycet116-vltotanexo = itab_zycet116-vltotanexo +
itab_zycet118-netpr.
ENDIF.
* >> Início da exclusão: FORM BUSCA_PARCELAS
IF itab_zycet065-acrescimo EQ 'X'.
IF NOT itab_zycet002-vlacrescimo_r IS INITIAL.
ADD itab_zycet002-vlacrescimo_r TO itab_zycet116-vltotanexo.
ELSE.
ADD itab_zycet002-vlacrescimo TO itab_zycet116-vltotanexo.
ENDIF.
ENDIF.
IF itab_zycet065-desconto EQ 'X'.
IF NOT itab_zycet002-vldesconto_r IS INITIAL.
itab_zycet116-vltotanexo = itab_zycet116-vltotanexo -
ABS( itab_zycet002-vldesconto_r ).
ELSE.
itab_zycet116-vltotanexo = itab_zycet116-vltotanexo -
ABS( itab_zycet002-vldesconto ).
ENDIF.
ENDIF.
* << Fim da exclusão
ENDLOOP.
SELECT *
FROM /pws/zycet134
INTO TABLE itab_zycet134
FOR ALL ENTRIES IN itab_zycet002
...
...
PERFORM dias_limite.
MODIFY itab_zycet116 INDEX 1.
ENDFORM.
FORM verifica_re.
DATA: itab_zycet008 LIKE /pws/zycet008 OCCURS 0 WITH HEADER LINE.
* >> Início da inclusão: FORM VERIFICA_RE
DATA: itab_zycet156 LIKE /pws/zycet156 OCCURS 0 WITH HEADER LINE.
* << Fim da inclusão
DATA: itab_soma LIKE /pws/zycet002 OCCURS 0 WITH HEADER LINE.
DATA: v_rateio.
* >> Início da inclusão: FORM VERIFICA_RE
tables: /pws/zycee313.
* << Fim da inclusão
SELECT * FROM /pws/zycet065 INTO TABLE itab_zycet065.
SELECT * FROM /pws/zycet008 INTO TABLE itab_zycet008
WHERE nrseq EQ /pws/zycee001-nrseq.
* >> Início da inclusão: FORM VERIFICA_RE
select * from /pws/zycet156 into table itab_zycet156
where codmod = 'X'.
* << Fim da inclusão
LOOP AT itab_zycet002.
IF itab_zycet002-vlme_r IS INITIAL.
SELECT SINGLE * FROM /pws/zyglt217
WHERE arbgb EQ '/PWS/ZYCEM' AND msgnr EQ '118'.
IF sy-subrc EQ 0 AND NOT /pws/zyglt217-msgtp IS INITIAL.
...
...
IF itab_zycet002-vlagente_r GT 0.
MOVE: itab_zycet002-vlagente_r TO itab_soma-vlagente.
ENDIF.
COLLECT itab_soma.
ENDLOOP.
* >> Início da inclusão: FORM VERIFICA_RE
CLEAR /pws/zycee313.
CALL FUNCTION '/PWS/ZYCE_CALC_VALOR_CONDITION'
IMPORTING
/pws/zycee313 = /pws/zycee313
TABLES
itab_zycet008 = itab_zycet008.
* << Fim da inclusão
READ TABLE itab_soma INDEX 1.
* >> Início da exclusão: FORM VERIFICA_RE
IF sy-subrc EQ 0.
READ TABLE itab_zycet008 WITH KEY nrseq = /pws/zycee001-nrseq
codigo = '000002'.
* << Fim da exclusão
IF sy-subrc EQ 0.
* >> Início da exclusão: FORM VERIFICA_RE
IF itab_zycet008-vlme NE itab_soma-vldesconto.
* << Fim da exclusão
* >> Início da inclusão: FORM VERIFICA_RE
IF /pws/zycee313-vlme_des NE itab_soma-vldesconto.
* << Fim da inclusão
v_rateio = 1.
ENDIF.
* >> Início da exclusão: FORM VERIFICA_RE
ENDIF.
READ TABLE itab_zycet008 WITH KEY nrseq = /pws/zycee001-nrseq
codigo = '000003'.
IF sy-subrc EQ 0.
IF itab_zycet008-vlme NE itab_soma-vlacrescimo.
* << Fim da exclusão
* >> Início da inclusão: FORM VERIFICA_RE
IF /pws/zycee313-vlme_acr NE itab_soma-vlacrescimo.
* << Fim da inclusão
v_rateio = 1.
* >> Início da exclusão: FORM VERIFICA_RE
ENDIF.
* << Fim da exclusão
ENDIF.
* >> Início da exclusão: FORM VERIFICA_RE
READ TABLE itab_zycet008 WITH KEY nrseq = /pws/zycee001-nrseq
codigo = '000007'.
IF sy-subrc EQ 0.
IF itab_zycet008-vlme NE itab_soma-vlseguro.
* << Fim da exclusão
* >> Início da inclusão: FORM VERIFICA_RE
IF /pws/zycee313-vlme_seg NE itab_soma-vlseguro.
* << Fim da inclusão
v_rateio = 1.
* >> Início da exclusão: FORM VERIFICA_RE
ENDIF.
* << Fim da exclusão
ENDIF.
* >> Início da exclusão: FORM VERIFICA_RE
READ TABLE itab_zycet008 WITH KEY nrseq = /pws/zycee001-nrseq
codigo = '000009'.
IF sy-subrc EQ 0.
IF itab_zycet008-vlme NE itab_soma-vlagente.
* << Fim da exclusão
* >> Início da inclusão: FORM VERIFICA_RE
IF /pws/zycee313-vlme_com NE itab_soma-vlagente.
* << Fim da inclusão
v_rateio = 1.
* >> Início da exclusão: FORM VERIFICA_RE
ENDIF.
* << Fim da exclusão
ENDIF.
* >> Início da exclusão: FORM VERIFICA_RE
READ TABLE itab_zycet008 WITH KEY nrseq = /pws/zycee001-nrseq
codigo = '000011'.
IF sy-subrc EQ 0.
IF itab_zycet008-vlme NE itab_soma-vlfrete.
* << Fim da exclusão
* >> Início da inclusão: FORM VERIFICA_RE
IF /pws/zycee313-vlme_frt NE itab_soma-vlfrete.
* << Fim da inclusão
v_rateio = 1.
ENDIF.
* >> Início da exclusão: FORM VERIFICA_RE
ENDIF.
READ TABLE itab_zycet008 WITH KEY nrseq = /pws/zycee001-nrseq
codigo = '000016'.
IF sy-subrc EQ 0.
IF itab_zycet008-vlme NE itab_soma-vlod.
* << Fim da exclusão
* >> Início da inclusão: FORM VERIFICA_RE
IF /pws/zycee313-vlme_out NE itab_soma-vlod.
* << Fim da inclusão
v_rateio = 1.
ENDIF.
* >> Início da exclusão: FORM VERIFICA_RE
ENDIF.
* << Fim da exclusão
IF NOT v_rateio IS INITIAL.
SELECT SINGLE * FROM /pws/zyglt217
WHERE arbgb EQ '/PWS/ZYCEM' AND msgnr EQ '118'.
IF sy-subrc EQ 0 AND NOT /pws/zyglt217-msgtp IS INITIAL.
MESSAGE ID '/PWS/ZYCEM' TYPE /pws/zyglt217-msgtp NUMBER '118'.
...
...
AND aupos EQ itab_zycet118-aupos
AND vbeln_vl EQ itab_zycet118-vbeln_vl
AND posnl EQ itab_zycet118-posnl.
IF itab_zycet001-tpcalc = text-040.
itab_zycet092-vfob = itab_zycet092-netpr - v_difer.
* >> Início da exclusão: FORM AJUSTA_PRECOS
IF NOT itab_zycet065-acrescimo IS INITIAL.
IF NOT itab_zycet002-vlacrescimo_r IS INITIAL.
ADD itab_zycet002-vlacrescimo_r TO itab_zycet092-netpr.
ADD itab_zycet002-vlacrescimo_r TO itab_zycet092-vfob.
ELSEIF NOT itab_zycet002-vlacrescimo IS INITIAL.
ADD itab_zycet002-vlacrescimo TO itab_zycet092-netpr.
ADD itab_zycet002-vlacrescimo TO itab_zycet092-vfob.
ENDIF.
ENDIF.
IF NOT itab_zycet065-desconto IS INITIAL.
IF NOT itab_zycet002-vldesconto_r IS INITIAL.
itab_zycet092-netpr = itab_zycet092-netpr -
ABS( itab_zycet002-vldesconto_r ).
itab_zycet092-vfob = itab_zycet092-vfob -
ABS( itab_zycet002-vldesconto_r ).
ELSEIF NOT itab_zycet002-vldesconto IS INITIAL.
itab_zycet092-netpr = itab_zycet092-netpr -
ABS( itab_zycet002-vldesconto ).
itab_zycet092-vfob = itab_zycet092-vfob -
ABS( itab_zycet002-vldesconto ).
ENDIF.
ENDIF.
* << Fim da exclusão
ELSE.
itab_zycet092-vfob = itab_zycet092-netpr - v_difer.
* >> Início da exclusão: FORM AJUSTA_PRECOS
IF NOT itab_zycet065-acrescimo IS INITIAL.
IF NOT itab_zycet002-vlacrescimo_r IS INITIAL.
ADD itab_zycet002-vlacrescimo_r TO itab_zycet092-vfob.
ADD itab_zycet002-vlacrescimo_r TO itab_zycet092-netpr.
ELSEIF NOT itab_zycet002-vlacrescimo IS INITIAL.
ADD itab_zycet002-vlacrescimo TO itab_zycet092-vfob.
ADD itab_zycet002-vlacrescimo_r TO itab_zycet092-netpr.
ENDIF.
ENDIF.
IF NOT itab_zycet065-desconto IS INITIAL.
IF NOT itab_zycet002-vldesconto_r IS INITIAL.
itab_zycet092-vfob = itab_zycet092-vfob -
ABS( itab_zycet002-vldesconto_r ).
itab_zycet092-netpr = itab_zycet092-netpr -
ABS( itab_zycet002-vldesconto_r ).
ELSEIF NOT itab_zycet002-vldesconto IS INITIAL.
itab_zycet092-vfob = itab_zycet092-vfob -
ABS( itab_zycet002-vldesconto ).
itab_zycet092-netpr = itab_zycet092-netpr -
ABS( itab_zycet002-vldesconto ).
ENDIF.
ENDIF.
* << Fim da exclusão
ENDIF.
ENDLOOP.
ENDLOOP.
MODIFY itab_zycet092.
ENDLOOP.
...
...
ENDIF.
ENDIF.
ENDIF.
IF itab_zycet001-tpcalc = text-040.
itab_zycet118-vfob = itab_zycet118-netpr - v_difer.
* >> Início da exclusão: FORM AJUSTA_PRECOS
IF NOT itab_zycet065-acrescimo IS INITIAL.
IF NOT itab_zycet002-vlacrescimo_r IS INITIAL.
ADD itab_zycet002-vlacrescimo_r TO itab_zycet118-vfob.
ADD itab_zycet002-vlacrescimo_r TO itab_zycet118-netpr.
ELSEIF NOT itab_zycet002-vlacrescimo IS INITIAL.
ADD itab_zycet002-vlacrescimo TO itab_zycet118-vfob.
ADD itab_zycet002-vlacrescimo TO itab_zycet118-netpr.
ENDIF.
ENDIF.
IF NOT itab_zycet065-desconto IS INITIAL.
IF NOT itab_zycet002-vldesconto_r IS INITIAL.
itab_zycet118-vfob = itab_zycet118-vfob -
ABS( itab_zycet002-vldesconto_r ).
itab_zycet118-netpr = itab_zycet118-netpr -
ABS( itab_zycet002-vldesconto_r ).
ELSEIF NOT itab_zycet002-vldesconto IS INITIAL.
itab_zycet118-vfob = itab_zycet118-vfob -
ABS( itab_zycet002-vldesconto ).
itab_zycet118-netpr = itab_zycet118-netpr -
ABS( itab_zycet002-vldesconto ).
ENDIF.
ENDIF.
* << Fim da exclusão
ELSE.
itab_zycet118-vfob = itab_zycet118-netpr - v_difer.
* >> Início da exclusão: FORM AJUSTA_PRECOS
IF NOT itab_zycet065-acrescimo IS INITIAL.
IF NOT itab_zycet002-vlacrescimo_r IS INITIAL.
ADD itab_zycet002-vlacrescimo_r TO itab_zycet118-vfob.
ADD itab_zycet002-vlacrescimo_r TO itab_zycet118-netpr.
ELSEIF NOT itab_zycet002-vlacrescimo IS INITIAL.
ADD itab_zycet002-vlacrescimo TO itab_zycet118-vfob.
ADD itab_zycet002-vlacrescimo_r TO itab_zycet118-netpr.
ENDIF.
ENDIF.
IF NOT itab_zycet065-desconto IS INITIAL.
IF NOT itab_zycet002-vldesconto_r IS INITIAL.
itab_zycet118-vfob = itab_zycet118-vfob -
ABS( itab_zycet002-vldesconto_r ).
itab_zycet118-netpr = itab_zycet118-netpr -
ABS( itab_zycet002-vldesconto_r ).
ELSEIF NOT itab_zycet002-vldesconto IS INITIAL.
itab_zycet118-vfob = itab_zycet118-vfob -
ABS( itab_zycet002-vldesconto ).
itab_zycet118-netpr = itab_zycet118-netpr -
ABS( itab_zycet002-vldesconto ).
ENDIF.
ENDIF.
* << Fim da exclusão
ENDIF.
MODIFY itab_zycet118.
ENDLOOP.
ENDLOOP.
ENDIF.
...