Módulo: DOC. IMPORTAÇÃO
Funcionalidade: DA
Data/Hora da Publicação: 29/08/2006 00:00:00
Data/Hora Última Alteração: 20/06/2011 13:13:47
Descrição da Nota: QUANTIDADE NACIONALIZADA DA DA NÃO ESTÁ CORRETA
Sintoma
A quantidade nacionalizada informada na pasta lote da DA não está correta.
A DA 133P06, F6D, tem quantidade de 100 kg.
O embarque 6900419I06 tem quantidade de 5kg.
Entretanto, a quantidade nacionalizada informada na pasta lote da DA está zerada.
Solução
Incluido um LOOP para jogar os valor para a tabela.
Dentro do loop um select single selecionando a Qtd. Nacionalizada do embarque que pode ter sido
alterada.
6.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 01999 Data: 29/08/2006 Hora: 10:54:16
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 01999
Categoria : Erro de Programa
Prioridade : Alta
Versão PW.CE : 6.0
Pacote : 00024
Agrupamento : 00129
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
QUANTIDADE NACIONALIZADA DA DA NÃO ESTÁ CORRETA
----------------------------------------------------------------------------------------------------
Palavras Chave:
QUANTIDADE NACIONALIZADA - DA - LOTE DA
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI070F01
REPS /PWS/MZYCI070TOP
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI070F01
...
MODIFY /pws/zycit453 FROM TABLE itab_zycit453.
DELETE FROM /pws/zycit454 WHERE nrseqda = /pws/zycie442-nrseqda.
MODIFY /pws/zycit454 FROM TABLE itab_zycit454.
DELETE FROM /pws/zycit460 WHERE nrseqda = /pws/zycie442-nrseqda.
MODIFY /pws/zycit460 FROM TABLE itab_zycit460.
* >> Início da exclusão: FORM SAVE_DATA
DELETE FROM /pws/zycit463 WHERE nrseqda = /pws/zycie442-nrseqda.
MODIFY /pws/zycit463 FROM TABLE itab_zycit463.
* << Fim da exclusão
* >> Início da inclusão: FORM SAVE_DATA
LOOP AT itab_zycit463.
CLEAR /pws/zycit463.
/pws/zycit463-mandt = sy-mandt.
/pws/zycit463-nrseqda = itab_zycit463-nrseqda.
/pws/zycit463-nrseqlote = itab_zycit463-nrseqlote.
/pws/zycit463-lote_forn = itab_zycit463-lote_forn.
/pws/zycit463-numfatura = itab_zycit463-numfatura.
/pws/zycit463-matnr = itab_zycit463-matnr.
/pws/zycit463-qtd_lote = itab_zycit463-qtd_lote.
/pws/zycit463-dt_validade = itab_zycit463-dt_validade.
/pws/zycit463-dt_fabricacao = itab_zycit463-dt_fabricacao.
SELECT SINGLE qtd_nac
INTO /pws/zycit463-qtd_nac
FROM /pws/zycit463
WHERE nrseqda EQ itab_zycit463-nrseqda
AND nrseqlote EQ itab_zycit463-nrseqlote.
MODIFY /pws/zycit463.
ENDLOOP.
* << Fim da inclusão
DELETE FROM /pws/zycit464 WHERE nrseqda = /pws/zycie442-nrseqda.
MODIFY /pws/zycit464 FROM TABLE itab_zycit464.
REFRESH: itab_zycit049di2, itab_zycit049di.
LOOP AT itab_zycit049.
MOVE-CORRESPONDING itab_zycit049 TO itab_zycit049di2.
...
...
REFRESH: itab_zycit443.
IF v_embimp IS INITIAL.
DELETE FROM /pws/zycit014 WHERE nrseq = /pws/zycie442-nrseqda.
MODIFY /pws/zycit014 FROM TABLE itab_zycit014.
ENDIF.
* >> Início da exclusão: FORM SAVE_DATA
DELETE FROM /pws/zycit463 WHERE nrseqda = /pws/zycie442-nrseqda.
* << Fim da exclusão
CLEAR: itab_zycit463.
REFRESH: itab_zycit463.
LOOP AT itab_lote.
* >> Início da exclusão: FORM SAVE_DATA
MOVE-CORRESPONDING itab_lote TO itab_zycit463.
* << Fim da exclusão
* >> Início da inclusão: FORM SAVE_DATA
v_tabix = sy-tabix.
CLEAR itab_zycit463.
itab_zycit463-mandt = sy-mandt.
itab_zycit463-nrseqda = itab_lote-nrseqda.
itab_zycit463-nrseqlote = itab_lote-nrseqlote.
itab_zycit463-lote_forn = itab_lote-lote_forn.
itab_zycit463-numfatura = itab_lote-numfatura.
itab_zycit463-matnr = itab_lote-matnr.
itab_zycit463-qtd_lote = itab_lote-qtd_lote.
itab_zycit463-dt_validade = itab_lote-dt_validade.
itab_zycit463-dt_fabricacao = itab_lote-dt_fabricacao.
* << Fim da inclusão
IF itab_zycit463-nrseqlote IS INITIAL.
LOOP AT itab_zycit463 INTO itab_zycit463a
WHERE NOT nrseqlote IS initial.
IF v_nrseqlote LT itab_zycit463a-nrseqlote.
v_nrseqlote = itab_zycit463a-nrseqlote.
ENDIF.
ENDLOOP.
itab_zycit463-nrseqlote = v_nrseqlote + 1.
ENDIF.
* >> Início da inclusão: FORM SAVE_DATA
SELECT SINGLE qtd_nac
INTO itab_zycit463-qtd_nac
FROM /pws/zycit463
WHERE nrseqda EQ itab_lote-nrseqda
AND nrseqlote EQ itab_zycit463-nrseqlote.
itab_lote-qtd_nac = itab_zycit463-qtd_nac.
MODIFY itab_lote INDEX v_tabix.
* << Fim da inclusão
APPEND itab_zycit463.
ENDLOOP.
* >> Início da inclusão: FORM SAVE_DATA
MODIFY /pws/zycit463 FROM TABLE itab_zycit463.
* << Fim da inclusão
LOOP AT itab_it.
MOVE-CORRESPONDING itab_it TO itab_zycit003.
APPEND itab_zycit003.
MOVE-CORRESPONDING itab_it TO itab_zycit455.
IF itab_zycit455-itseqda IS INITIAL.
...
...
MOVE-CORRESPONDING itab_it TO itab_zycit443.
APPEND itab_zycit443.
ENDLOOP.
MODIFY /pws/zycit443 FROM TABLE itab_zycit443.
MODIFY /pws/zycit455 FROM TABLE itab_zycit455.
* >> Início da exclusão: FORM SAVE_DATA
MODIFY /pws/zycit463 FROM TABLE itab_zycit463.
* << Fim da exclusão
PERFORM cria_zycit269.
IF NOT itab_zycit269[] IS INITIAL.
MODIFY /pws/zycit269 FROM TABLE itab_zycit269.
ENDIF.
LOOP AT itab_it
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI070TOP
...
bsis ,
/pws/zyglt217,
/pws/zycit460,
/pws/zycie460,
/pws/zycie463,
* >> Início da inclusão:
/pws/zycit463,
* << Fim da inclusão
/pws/zycie464.
TYPES:
BEGIN OF ty_zycit003.
INCLUDE STRUCTURE /pws/zycie003.
TYPES:
...