Módulo: DOC. EXPORTAÇÃO
Funcionalidade: Relatórios
Data/Hora da Publicação: 25/11/2005 00:00:00
Data/Hora Última Alteração: 21/02/2011 13:52:38
Descrição da Nota: AJUSTES COM RELAÇÃO A CONSISTÊNCIAS DE RED FLAG E CAMPOS ERRADOS
Sintoma
Alguns problemas relacionados a consistências de RED FLAG e campos vazios estavam ocorrendo no
relatório de Controle de Exceções.
Solução
Carga correta de campos vazios e acerto nas consistências de RED FLAG.
6.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 00344 Data: 25/11/2005 Hora: 13:42:43
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 00344
Categoria : Erro de Programa
Prioridade : Baixa
Versão PW.CE : 6.0
Pacote : 00021
Agrupamento : 00089
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
AJUSTES COM RELAÇÃO A CONSISTÊNCIAS DE RED FLAG E CAMPOS ERRADOS
----------------------------------------------------------------------------------------------------
Palavras Chave:
ERRADOS; CAMPOS; RED FLAG; CONSISTÊNCIAS; RELAÇÃO; AJUSTES
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/ZYCER214
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/ZYCER214
FORM seleciona_embarque.
* >> Início da inclusão: FORM SELECIONA_EMBARQUE
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
percentage = 10
text = 'Selecionando Dados'.
* << Fim da inclusão
SELECT a~mandt a~nrseq a~nremb a~nrsd a~canal a~navio
a~dtprev a~dtaverb a~dtenvcamb a~dtdoc a~dtcruze a~dtemb
a~viatrans a~portdest a~despach
b~vbeln_va b~vbeln_vl b~vbeln_vf b~aupos b~posnl b~posnr
b~waers b~inco1 b~docnum b~nfnum b~werks b~vkgrp
...
...
ELSE.
REFRESH itab_embarque.
ENDIF.
ENDIF.
ENDIF.
* >> Início da inclusão: FORM SELECIONA_EMBARQUE
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
percentage = 30
text = 'Selecionando Dados'.
* << Fim da inclusão
IF NOT itab_embarque[] IS INITIAL.
SELECT vbeln bstkd
FROM vbkd
INTO TABLE itab_vbkd
FOR ALL ENTRIES IN itab_embarque
...
...
ELSE.
REFRESH itab_embarque.
ENDIF.
ENDIF.
ENDIF.
* >> Início da inclusão: FORM SELECIONA_EMBARQUE
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
percentage = 50
text = 'Selecionando Dados'.
* << Fim da inclusão
IF NOT itab_embarque[] IS INITIAL.
PERFORM trata_ordem_emb.
ENDIF.
IF NOT itab_embarque[] IS INITIAL.
PERFORM seleciona_dados_embarque.
...
...
INTO table itab_fatura
FOR ALL ENTRIES IN itab_embarque
WHERE vbrp~vbeln EQ itab_embarque-vbeln_vf
AND vbrp~posnr EQ itab_embarque-posnr.
ENDIF.
* >> Início da inclusão: FORM SELECIONA_EMBARQUE
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
percentage = 100
text = 'Selecionando Dados'.
* << Fim da inclusão
ENDFORM.
...
FORM processa_dados.
SORT itab_ordem BY vbeln_vl
vbeln
posnl .
LOOP AT itab_ordem.
CLEAR: itab_relat.
MOVE: itab_ordem-vbeln TO itab_relat-vbeln_va,
...
ENDIF.
CLEAR colinfo.
colinfo-color-col = 2.
colinfo-fieldname = 'BSTKD'.
APPEND colinfo TO itab_relat-colinfo.
* >> Início da exclusão: FORM PROCESSA_DADOS
PERFORM red_flags.
* << Fim da exclusão
ENDIF.
* >> Início da inclusão: FORM PROCESSA_DADOS
PERFORM red_flags.
* << Fim da inclusão
APPEND itab_relat.
ENDLOOP.
SORT itab_relat BY nrseq
vbeln_vl
werks.
DELETE ADJACENT DUPLICATES FROM itab_relat.
* >> Início da exclusão: FORM PROCESSA_DADOS
DATA: BEGIN OF itab_zycet003_aux OCCURS 0,
nrseq LIKE /pws/zycet003-nrseq,
nrre LIKE /pws/zycet003-nrre,
dtlibanu LIKE /pws/zycet003-dtlibanu,
END OF itab_zycet003_aux.
* << Fim da exclusão
* >> Início da inclusão: FORM PROCESSA_DADOS
LOOP AT itab_relat.
* << Fim da inclusão
* >> Início da exclusão: FORM PROCESSA_DADOS
itab_zycet003_aux[] = itab_zycet003[].
* << Fim da exclusão
* >> Início da inclusão: FORM PROCESSA_DADOS
READ TABLE itab_zycet003 WITH KEY nrseq = itab_relat-nrseq.
* << Fim da inclusão
* >> Início da exclusão: FORM PROCESSA_DADOS
LOOP AT itab_relat.
READ TABLE itab_zycet003_aux WITH KEY nrseq = itab_relat-nrseq.
IF sy-subrc EQ 0 AND itab_relat-icon_4 <> ' '.
MOVE: itab_zycet003_aux-nrre TO itab_relat-nrre,
itab_zycet003_aux-dtlibanu TO itab_relat-dtlibanu.
* << Fim da exclusão
* >> Início da inclusão: FORM PROCESSA_DADOS
IF sy-subrc EQ 0 AND itab_relat-icon_4 IS INITIAL.
MOVE: itab_zycet003-nrre TO itab_relat-nrre.
WRITE itab_zycet003-dtlibanu TO itab_relat-icon_4.
* << Fim da inclusão
MODIFY itab_relat.
* >> Início da exclusão: FORM PROCESSA_DADOS
DELETE itab_zycet003_aux INDEX sy-tabix.
* << Fim da exclusão
ENDIF.
ENDLOOP.
DELETE ADJACENT DUPLICATES FROM itab_relat.
PERFORM refresh_tabelas.
* >> Início da exclusão: FORM PROCESSA_DADOS
DATA v_tabix LIKE sy-tabix.
LOOP AT itab_relat.
ON CHANGE OF itab_relat-nrseq.
CLEAR v_tabix.
LOOP AT itab_relat WHERE nrseq = itab_relat-nrseq.
IF v_tabix > 0.
LOOP AT itab_relat WHERE nrseq = itab_relat-nrseq AND
icon_4 <> ' '.
IF sy-subrc EQ 0.
LOOP AT itab_relat WHERE nrseq = itab_relat-nrseq AND
icon_4 = ' '.
DELETE itab_relat.
CLEAR v_tabix.
ENDLOOP.
ENDIF.
ENDLOOP.
ENDIF.
v_tabix = v_tabix + 1.
ENDLOOP.
ENDON.
ENDLOOP.
* << Fim da exclusão
SORT itab_relat BY nrseq.
PERFORM limpa_campos.
ENDFORM.
...
FORM red_flags.
DATA: v_data LIKE sy-datum.
CASE itab_relat-viatrans.
WHEN c_ma OR c_rd OR c_ta.
CLEAR v_data.
IF NOT itab_relat-bldat IS INITIAL.
WRITE: itab_relat-bldat TO itab_relat-icon_1.
ELSE.
...
WRITE: itab_relat-dtaverb TO itab_relat-icon_7.
ENDIF.
CLEAR v_data.
IF itab_relat-dtdoc IS INITIAL.
IF itab_relat-viatrans EQ c_ta.
* >> Início da exclusão: FORM RED_FLAGS
IF NOT itab_relat-dtemb IS INITIAL.
v_data = itab_relat-dtemb + 2.
IF sy-datum GT v_data.
MOVE: v_icon TO itab_relat-icon_8.
ELSE.
WRITE: itab_relat-dtdoc TO itab_relat-icon_8.
ENDIF.
ELSE.
* << Fim da exclusão
WRITE: itab_relat-dtdoc TO itab_relat-icon_8.
* >> Início da exclusão: FORM RED_FLAGS
ENDIF.
* << Fim da exclusão
ELSE.
...
ENDIF.
IF NOT itab_relat-dtenvcamb IS INITIAL.
WRITE: itab_relat-dtenvcamb TO itab_relat-icon_9.
ENDIF.
ENDCASE.
ENDFORM. " red_flags