Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Nota Fiscal
Data/Hora da Publicação: 12/08/2008 00:00:00
Data/Hora Última Alteração: 23/02/2011 09:17:17
Descrição da Nota: AO CRIAR UMA NOTA FISCAL APARECE O RATEIO 2 VEZES.
Sintoma
Ao criar a uma nota fiscal com o a mesma quantidade de itens parametrizada na tabela /pws/zycit048 o
programa exibe o rateio varias vezes.
Solução
Ajustado programa para verificar os itens que já foram processados.
7.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 07126 Data: 12/08/2008 Hora: 09:45:09
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 07126
Categoria : Erro de Programa
Prioridade : Baixa
Versão PW.CE : 7.0
Pacote : 00006
Agrupamento : 00060
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
04228 - 00001 - 7.0 - 00002 - NECESSÁRIO CHAMADA DE EXIT AO CRIAR ITENS DA NOTA FISCAL GLOBAL.
----------------------------------------------------------------------------------------------------
AO CRIAR UMA NOTA FISCAL APARECE O RATEIO 2 VEZES.
----------------------------------------------------------------------------------------------------
Palavras Chave:
RATEIO - CRIAR - NOTA - FISCAL - /PWS/SAPMZYCI016
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI016F01
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI016F01
...
ebelp = itab_zycit042-ebelp.
ENDIF.
IF wa_zycit048-sepnf = 'X'.
SORT itab_zycit042_aux BY tpnf j_1bbranch lifnr nrseq ebeln ebelp.
SORT itab_zycit042 BY tpnf j_1bbranch lifnr nrseq ebeln ebelp.
CLEAR v_tpnf.
LOOP AT itab_zycit042_aux WHERE ( docnum IS initial OR
docnum = '9999999999' OR
docnum = '8888888888' ) AND
NOT ebeln IS initial AND
* >> Início da inclusão: FORM FILL_DATA_J1B1
processado EQ space AND
* << Fim da inclusão
mark = 'X'.
CLEAR: v_counter.
REFRESH itab_zyglt100.
PERFORM verifica_exit USING 'D'
'/PWS/SAPMZYCI016'
' '.
e_subrc = '0'.
CLEAR itab_zyglt100 .
READ TABLE itab_zyglt100 WITH KEY
zexit = 'DNF013' BINARY SEARCH.
...
...
AND tpnf EQ itab_zycit042_aux-tpnf
AND lifnr EQ itab_zycit042_aux-lifnr
AND j_1bbranch EQ itab_zycit042_aux-j_1bbranch
AND mark = 'X'
AND ( docnum IS initial OR
docnum = '9999999999' OR
docnum = '8888888888' )
AND processado IS initial.
itab_zycit042-processado = 'X'.
MODIFY itab_zycit042 TRANSPORTING processado.
* >> Início da inclusão: FORM FILL_DATA_J1B1
itab_zycit042_aux-processado = 'X'.
MODIFY itab_zycit042_aux TRANSPORTING processado
WHERE nrseq EQ itab_zycit042-nrseq
AND j_1bbranch = itab_zycit042-j_1bbranch
AND lifnr = itab_zycit042-lifnr
AND nfglobal EQ itab_zycit042-nfglobal
AND ebeln EQ itab_zycit042-ebeln
AND ebelp EQ itab_zycit042-ebelp.
* << Fim da inclusão
READ TABLE itab_t001w WITH KEY werks = itab_zycit042-werks.
READ TABLE itab_zycit042_d WITH KEY
nrseq = itab_zycit042-nrseq
ebeln = itab_zycit042-ebeln
ebelp = itab_zycit042-ebelp.
CLEAR v_subrc.
MOVE: itab_zycit042 TO wa_zycit042_exit,
itab_zycit042_d TO wa_zycit042_exit_d.
READ TABLE itab_zycit033
WITH KEY tpnf = itab_zycit042-tpnf
...
...
ebeln = itab_zycit003-ebeln AND
ebelp = itab_zycit003-ebelp AND
eliminado = space.
IF sy-subrc EQ 0.
READ TABLE itab_zycit263 INDEX 1.
SELECT SINGLE frpagto INTO /pws/zycit006-frpagto
FROM /pws/zycit006 "#EC CI_NOFIELD
WHERE nrseq_pgfat EQ itab_zycit263-nrseq_pgfat.
IF sy-subrc EQ 0.
if not itab_zycit263[] is initial.
* >> Início da exclusão: FORM GERA_ITAB_ZYCIT042
select * from /pws/zycit094 "#EC CI_NOFIrst
* << Fim da exclusão
* >> Início da inclusão: FORM GERA_ITAB_ZYCIT042
SELECT * FROM /pws/zycit094 "#EC CI_NOFIrst
* << Fim da inclusão
into table itab_zycit094
where nrseq eq itab_zycit263-nrseq.
read table itab_zycit094 index 1.
* >> Início da exclusão: FORM GERA_ITAB_ZYCIT042
select * from /pws/zycit006 "#EC CI_NOFIELD
* << Fim da exclusão
* >> Início da inclusão: FORM GERA_ITAB_ZYCIT042
SELECT * FROM /pws/zycit006 "#EC CI_NOFIELD
* << Fim da inclusão
into table itab_zycit006
...