Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Recebimento
Data/Hora da Publicação: 25/07/2007 00:00:00
Data/Hora Última Alteração: 23/02/2011 09:53:41
Descrição da Nota: NÃO GRAVA CONGELAMOV DA /PWS/ZYCIT036 EM CASO DE ERRO NA CONTABILIZAÇÃO.
Sintoma
não grava congelamov da /PWS/ZYCIT036 em caso de erro na contabilização, ocasionando diferença no
encerramento.
Solução
ajustar gravação na tabela.
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 04271 Data: 25/07/2007 Hora: 13:54:02
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 04271
Categoria : Erro de Programa
Prioridade : Alta
Versão PW.CE : 7.0
Pacote : 00002
Agrupamento : 00005
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
01598 - 00001 - 6.0 - 00023 - AO SELECIOANR O ITEM E CLICAR PARA CRIAR O RECEBIMENTO, APARECE A
01918 - 00002 - 6.0 - 00024 - NO ESTORNO DO RECEBIMENTO ESTÁ GRAVANDO RESUMO DE DOCTOS ERRADO.
----------------------------------------------------------------------------------------------------
NÃO GRAVA CONGELAMOV DA /PWS/ZYCIT036 EM CASO DE ERRO NA CONTABILIZAÇÃO.
----------------------------------------------------------------------------------------------------
Palavras Chave:
CONGELAMOV - /PWS/ZYCIT036 - ERRO - CONTABILIZAÇÃO
RECEBIMENTO - CUSTO EFETIVO
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI017F01
REPS /PWS/MZYCI017F03
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI017F01
...
ELSE.
IF NOT wa_nf-belnr_mr1m IS INITIAL AND
NOT wa_nf-mblnr_mb01 IS INITIAL AND
wa_nf-belnr_f_51 IS INITIAL AND
wa_nf-belnr_f_02 IS INITIAL AND
wa_nf-belnrf02seg IS INITIAL.
CLEAR itab_itemdata.
REFRESH itab_itemdata.
SELECT SINGLE * FROM t001 WHERE bukrs = wa_nf-bukrs.
PERFORM get_parameters_mrm1_receb.
* >> Início da inclusão: FORM EXECUTA_BATCH_INPUT
clear v_f_51_ok.
* << Fim da inclusão
PERFORM fill_date_f_51.
* >> Início da inclusão: FORM EXECUTA_BATCH_INPUT
IF v_f_51_ok EQ 'S'.
perform congelamov_saldo_ato.
endif.
* << Fim da inclusão
IF wa_nf-belnr_f_02 IS INITIAL.
IF t001-land1 = 'AR' OR t001-land1 = 'CL'.
PERFORM fill_date_f_02_ana.
ELSE.
...
...
ENDIF.
IF v_lock NE 'X'.
PERFORM trata_mr1m.
IF v_mr1m_ok EQ 'S' AND v_resposta EQ 'S'.
PERFORM trata_mb01.
PERFORM unlock_fornecedor2.
IF v_mb01_ok EQ 'S'.
v_sdep = 'X'.
PERFORM trata_f_51.
IF v_f_51_ok EQ 'S'.
* >> Início da inclusão: FORM EXECUTA_RECEBIMENTO
perform congelamov_saldo_ato.
* << Fim da inclusão
* >> Início da exclusão: FORM EXECUTA_RECEBIMENTO
PERFORM adiciona_saldo_ato.
* << Fim da exclusão
IF /pws/zycie001-modalidade NE '99' AND
t001-land1 NE 'AR' AND t001-land1 NE 'CL'.
PERFORM fill_date_j1b2.
PERFORM fill_date_j1b2_global.
ENDIF.
* >> Início da exclusão: FORM EXECUTA_RECEBIMENTO
LOOP AT itab_itens_nf.
itab_deposito-lgort = itab_itens_nf-lgort.
MODIFY itab_deposito TRANSPORTING lgort
WHERE ebeln = itab_itens_nf-ebeln
AND ebelp = itab_itens_nf-ebelp.
IF v_existe_nfr = 'S'.
UPDATE /pws/zycit044 SET lgort = itab_itens_nf-lgort
WHERE nrseqnf = itab_itens_nf-nrseqnf
AND nrseq = itab_itens_nf-nrseq
AND nfglobal = itab_itens_nf-nfglobal
AND nfremessa = itab_itens_nf-nfremessa
AND ebeln = itab_itens_nf-ebeln
AND ebelp = itab_itens_nf-ebelp.
ELSE.
UPDATE /pws/zycit042 SET lgort = itab_itens_nf-lgort
WHERE nrseqnf = itab_itens_nf-nrseqnf
AND nrseq = itab_itens_nf-nrseq
AND nfglobal = itab_itens_nf-nfglobal
AND ebeln = itab_itens_nf-ebeln
AND ebelp = itab_itens_nf-ebelp.
ENDIF.
UPDATE /pws/zycit036 SET congelamov = 'X'
WHERE nrseq = itab_itens_nf-nrseq
AND ebelp = itab_itens_nf-ebelp
AND ebeln = itab_itens_nf-ebeln
AND origem NE 'PED'.
ENDLOOP.
LOOP AT itab_zycit036_aux2.
IF itab_zycit036_aux2-origem = 'PED'.
CLEAR itab_zycit036-congelamov.
MODIFY itab_zycit036_aux2.
MODIFY /pws/zycit036 FROM itab_zycit036_aux2.
ENDIF.
ENDLOOP.
* << Fim da exclusão
ELSE.
MOVE wa_nf TO wa_nf_aux.
EXPORT wa_nf_aux TO MEMORY ID 'M_WA_NF'.
PERFORM verifica_exit USING 'D'
'/PWS/SAPMZYCI017'
'RCB005'.
CLEAR itab_zyglt100 .
READ TABLE itab_zyglt100 WITH KEY
zexit = 'RCB005' BINARY SEARCH.
IF sy-subrc EQ 0.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI017F03
...
* >> Início da inclusão:
form congelamov_saldo_ato.
PERFORM adiciona_saldo_ato.
LOOP AT itab_itens_nf.
itab_deposito-lgort = itab_itens_nf-lgort.
MODIFY itab_deposito TRANSPORTING lgort
WHERE ebeln = itab_itens_nf-ebeln
AND ebelp = itab_itens_nf-ebelp.
IF v_existe_nfr = 'S'.
UPDATE /pws/zycit044 SET lgort = itab_itens_nf-lgort
WHERE nrseqnf = itab_itens_nf-nrseqnf
AND nrseq = itab_itens_nf-nrseq
AND nfglobal = itab_itens_nf-nfglobal
AND nfremessa = itab_itens_nf-nfremessa
AND ebeln = itab_itens_nf-ebeln
AND ebelp = itab_itens_nf-ebelp.
ELSE.
UPDATE /pws/zycit042 SET lgort = itab_itens_nf-lgort
WHERE nrseqnf = itab_itens_nf-nrseqnf
AND nrseq = itab_itens_nf-nrseq
AND nfglobal = itab_itens_nf-nfglobal
AND ebeln = itab_itens_nf-ebeln
AND ebelp = itab_itens_nf-ebelp.
ENDIF.
UPDATE /pws/zycit036 SET congelamov = 'X'
WHERE nrseq = itab_itens_nf-nrseq
AND ebelp = itab_itens_nf-ebelp
AND ebeln = itab_itens_nf-ebeln
AND origem NE 'PED'.
ENDLOOP.
LOOP AT itab_zycit036_aux2.
IF itab_zycit036_aux2-origem = 'PED'.
CLEAR itab_zycit036-congelamov.
MODIFY itab_zycit036_aux2.
MODIFY /pws/zycit036 FROM itab_zycit036_aux2.
ENDIF.
ENDLOOP.
endform.
* << Fim da inclusão