Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Nota Fiscal
Data/Hora da Publicação: 31/05/2006 00:00:00
Data/Hora Última Alteração: 20/06/2011 12:25:55
Descrição da Nota: QUANDO ESTAMOS CRIANDO A NOTA FISCAL GLOBAL, PARA MAIS DE 10.
Sintoma
Quando estamos criando a nota fiscal global, para mais de 10 itens (na Jabil a nota comporta apenas
10 item), selecionando todos o itens e gerando a nota, o sistema esta se perdendo na gravação de
algumas informações na tabela /pws/zycit042. Estas informações são por exemplo o matnr e nfnun_c.
Este problema impcta em um desenvolvimento da jabil que busca a informação do matnr. Segue em anexo
o print do sistema se perdendo na gravação da tabela /pws/zycit042.
Solução
Atualizado para mover as informações da tabela e não da Tela.
Atualizado para mover as informações da tabela e não da Tela para a Nota fiscal Global para mais de
10 itens
6.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 01469 Data: 31/05/2006 Hora: 10:15:00
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 01469
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 6.0
Pacote : 00023
Agrupamento : 00116
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
QUANDO ESTAMOS CRIANDO A NOTA FISCAL GLOBAL, PARA MAIS DE 10.
----------------------------------------------------------------------------------------------------
Palavras Chave:
CRIANDO - NOTA - FISCAL - GLOBAL
----------------------------------------------------------------------------------------------------
Objetos da nota:
DYNP /PWS/SAPMZYCI016 0100
REPS /PWS/MZYCI016F01
REPS /PWS/MZYCI016I01
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI016F01
...
tabela = text-014
cpochv = /pws/zycie041-nfglobal
tpmsg = 'S'.
IF sy-subrc EQ 0.
IF it_zycee005-belnr NE '0000000000'.
* >> Início da exclusão: FORM FILL_DATA_J1B1
SELECT SINGLE docnum INTO j_1bnfdoc-docnum FROM j_1bnfdoc
* << Fim da exclusão
* >> Início da inclusão: FORM FILL_DATA_J1B1
SELECT SINGLE * FROM j_1bnfdoc
* << Fim da inclusão
WHERE docnum EQ it_zycee005-belnr.
IF sy-subrc EQ 0 OR it_zycet005-belnr = '9999999999'
OR it_zycet005-belnr = '8888888888'.
/pws/zycie041-docnum = it_zycee005-belnr.
IF it_zycet005-belnr = '9999999999'.
...
...
AND ( docnum IS initial OR
docnum = '9999999999' OR
docnum = '8888888888' )
AND mark = 'X'
AND processado = 'X'.
* >> Início da inclusão: FORM FILL_DATA_J1B1
READ TABLE itab_matuse_aux WITH KEY ebeln = itab_zycit042-ebeln
ebelp = itab_zycit042-ebelp.
IF sy-subrc = 0.
MOVE itab_matuse_aux-matnr TO
itab_zycit042-matnr.
ENDIF.
MOVE: j_1bnfdoc-nfnum TO itab_zycit042-nfnum,
j_1bnfdoc-series TO itab_zycit042-series.
* << Fim da inclusão
MODIFY /pws/zycit042 FROM itab_zycit042.
UPDATE /pws/zycit003 SET tpnf = itab_zycit042-tpnf
WHERE nrseq = itab_zycit042-nrseq
AND ebeln = itab_zycit042-ebeln
AND ebelp = itab_zycit042-ebelp.
...
...
tabela = text-014
cpochv = /pws/zycie041-nfglobal
tpmsg = 'S'.
IF sy-subrc EQ 0.
IF it_zycee005-belnr NE '0000000000'.
* >> Início da exclusão: FORM FILL_DATA_J1B1
SELECT SINGLE docnum INTO j_1bnfdoc-docnum FROM j_1bnfdoc
* << Fim da exclusão
* >> Início da inclusão: FORM FILL_DATA_J1B1
SELECT SINGLE * FROM j_1bnfdoc
* << Fim da inclusão
WHERE docnum EQ it_zycee005-belnr.
IF sy-subrc EQ 0 OR it_zycet005-belnr = '9999999999'
OR it_zycet005-belnr = '8888888888'.
/pws/zycie041-docnum = it_zycee005-belnr.
IF it_zycet005-belnr = '9999999999'.
...
...
AND ( docnum IS initial OR
docnum = '9999999999' OR
docnum = '8888888888' )
AND mark = 'X'
AND processado = 'X'.
* >> Início da inclusão: FORM FILL_DATA_J1B1
READ TABLE itab_matuse_aux WITH KEY ebeln = itab_zycit042-ebeln
ebelp = itab_zycit042-ebelp.
IF sy-subrc = 0.
MOVE itab_matuse_aux-matnr TO
itab_zycit042-matnr.
ENDIF.
MOVE: j_1bnfdoc-nfnum TO itab_zycit042-nfnum,
j_1bnfdoc-series TO itab_zycit042-series.
* << Fim da inclusão
MODIFY /pws/zycit042 FROM itab_zycit042.
UPDATE /pws/zycit003 SET tpnf = itab_zycit042-tpnf
WHERE nrseq = itab_zycit042-nrseq
AND ebeln = itab_zycit042-ebeln
AND ebelp = itab_zycit042-ebelp.
...
...
tabela = text-014
cpochv = /pws/zycie041-nfglobal
tpmsg = 'S'.
IF sy-subrc EQ 0.
IF it_zycee005-belnr NE '0000000000'.
* >> Início da exclusão: FORM FILL_DATA_J1B1
SELECT SINGLE docnum INTO j_1bnfdoc-docnum FROM j_1bnfdoc
* << Fim da exclusão
* >> Início da inclusão: FORM FILL_DATA_J1B1
SELECT SINGLE * FROM j_1bnfdoc
* << Fim da inclusão
WHERE docnum EQ it_zycee005-belnr.
IF sy-subrc EQ 0 OR it_zycet005-belnr = '9999999999'
OR it_zycet005-belnr = '8888888888'.
/pws/zycie041-docnum = it_zycee005-belnr.
IF it_zycet005-belnr = '9999999999'.
...
...
AND ( docnum IS initial OR
docnum = '9999999999' OR
docnum = '8888888888' )
AND mark = 'X'
AND processado = 'X'.
* >> Início da inclusão: FORM FILL_DATA_J1B1
READ TABLE itab_matuse_aux WITH KEY ebeln = itab_zycit042-ebeln
ebelp = itab_zycit042-ebelp.
IF sy-subrc = 0.
MOVE itab_matuse_aux-matnr TO
itab_zycit042-matnr.
ENDIF.
MOVE: j_1bnfdoc-nfnum TO itab_zycit042-nfnum,
j_1bnfdoc-series TO itab_zycit042-series.
* << Fim da inclusão
MODIFY /pws/zycit042 FROM itab_zycit042.
UPDATE /pws/zycit003 SET tpnf = itab_zycit042-tpnf
WHERE nrseq = itab_zycit042-nrseq
AND ebeln = itab_zycit042-ebeln
AND ebelp = itab_zycit042-ebelp.
...
...
tabela = text-014
cpochv = /pws/zycie041-nfglobal
tpmsg = 'S'.
IF sy-subrc EQ 0.
IF it_zycee005-belnr NE '0000000000'.
* >> Início da exclusão: FORM FILL_DATA_J1B1
SELECT SINGLE docnum INTO j_1bnfdoc-docnum FROM j_1bnfdoc
* << Fim da exclusão
* >> Início da inclusão: FORM FILL_DATA_J1B1
SELECT SINGLE * FROM j_1bnfdoc
* << Fim da inclusão
WHERE docnum EQ it_zycee005-belnr.
IF sy-subrc EQ 0 OR it_zycet005-belnr = '9999999999'
OR it_zycet005-belnr = '8888888888'.
/pws/zycie041-docnum = it_zycee005-belnr.
IF it_zycet005-belnr = '9999999999'.
...
...
AND ebelp = itab_zycit042-ebelp
AND ( docnum IS initial OR
docnum = '9999999999' OR
docnum = '8888888888' )
AND mark = 'X'
AND processado = 'X'.
* >> Início da inclusão: FORM FILL_DATA_J1B1
READ TABLE itab_matuse_aux WITH KEY ebeln = itab_zycit042-ebeln
ebelp = itab_zycit042-ebelp.
IF sy-subrc = 0.
MOVE itab_matuse_aux-matnr TO
itab_zycit042-matnr.
ENDIF.
MOVE: j_1bnfdoc-nfnum TO itab_zycit042-nfnum,
j_1bnfdoc-series TO itab_zycit042-series.
.
* << Fim da inclusão
MODIFY /pws/zycit042 FROM itab_zycit042.
UPDATE /pws/zycit003 SET tpnf = itab_zycit042-tpnf
WHERE nrseq = itab_zycit042-nrseq
AND ebeln = itab_zycit042-ebeln
AND ebelp = itab_zycit042-ebelp.
...
...
cpochv =
/pws/zycie043-nfremessa
tpmsg = 'S'.
IF sy-subrc EQ 0.
IF it_zycee005-belnr NE '0000000000'.
* >> Início da exclusão: FORM FILL_DATA_J1B1_R
SELECT SINGLE docnum INTO j_1bnfdoc-docnum FROM j_1bnfdoc
* << Fim da exclusão
* >> Início da inclusão: FORM FILL_DATA_J1B1_R
SELECT SINGLE * FROM j_1bnfdoc
* << Fim da inclusão
WHERE docnum EQ it_zycee005-belnr.
IF sy-subrc EQ 0 OR it_zycet005-belnr = '9999999999'
OR it_zycet005-belnr = '8888888888'.
/pws/zycie043-docnum = it_zycee005-belnr.
IF it_zycet005-belnr = '9999999999'.
...
...
cpochv =
/pws/zycie043-nfremessa
tpmsg = 'S'.
IF sy-subrc EQ 0.
IF it_zycee005-belnr NE '0000000000'.
* >> Início da exclusão: FORM FILL_DATA_J1B1_R
SELECT SINGLE docnum INTO j_1bnfdoc-docnum FROM j_1bnfdoc
* << Fim da exclusão
* >> Início da inclusão: FORM FILL_DATA_J1B1_R
SELECT SINGLE * FROM j_1bnfdoc
* << Fim da inclusão
WHERE docnum EQ it_zycee005-belnr.
IF sy-subrc EQ 0 OR it_zycet005-belnr = '9999999999'
OR it_zycet005-belnr = '8888888888'.
/pws/zycie043-docnum = it_zycee005-belnr.
IF it_zycet005-belnr = '9999999999'.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI016I01
...
itab_zycit042-nfglobal = /pws/zycie041-nfglobal.
itab_zycit042-tpnf = /pws/zycie042-tpnf.
itab_zycit042-ebeln = /pws/zycie042-ebeln .
itab_zycit042-ebelp = /pws/zycie042-ebelp .
itab_zycit042-qtd_iten = /pws/zycie042-qtd_iten.
* >> Início da exclusão: MODULE ALTERA_ITAB_ZYCIT042
itab_zycit042-matnr = /pws/zycie042-matnr.
* << Fim da exclusão
itab_zycit042-processado = ' '.
IF /pws/zycie041-nfexterna = space.
itab_zycit042-nfnum = space.
itab_zycit042-series = space.
itab_zycit042-subser = space.
...