Módulo: PROCESSO IMPORTAÇÃO
Funcionalidade: Análise Oficial DIPJ
Data/Hora da Publicação: 09/01/2007 00:00:00
Data/Hora Última Alteração: 23/06/2010 14:23:34
Descrição da Nota: RELATÓRIO DIPJ
Sintoma
Preço Praticado dos métodos PIC e CPL consideram o mês 00.
Solução
Criar parâmetro que permite calcular o preço praticado considerando ou não o mês 00.
Não Usar - 2.00.0000
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 02843 Data: 09/01/2007 Hora: 16:40:16
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 02843
Categoria : Erro de Programa
Prioridade : Alta
Versão PW.TP : 2.0
Pacote : 00024
Agrupamento : 00005
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
RELATÓRIO DIPJ
----------------------------------------------------------------------------------------------------
Palavras Chave:
PREÇO PRATICADO CONSIDERANDO OU NÃO O MÊS 00
----------------------------------------------------------------------------------------------------
Objetos da nota:
DOMD /PWS/ZYTPD400
REPS /PWS/ZYTPR042
REPS /PWS/ZYTPR043
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DOMD /PWS/ZYTPD400
------------------------------------------------------------------------
Domínio modificado: /PWS/ZYTPD400
-Valores individuais
Incluído valor fixo "9"
Texto modificado, idioma: PT (52 caracteres):
"Preço Praticado - /PWS/ZYTPT902 Inclusive Período 00"
Excluído valor fixo "2"
Incluído valor fixo "2"
Texto modificado, idioma: PT (31 caracteres):
"Preço Parâmetro - /PWS/ZYTPT902"
Excluído valor fixo "3"
Incluído valor fixo "3"
Texto modificado, idioma: PT (33 caracteres):
"Total da Operação - /PWS/ZYTPT902"
Excluído valor fixo "4"
Incluído valor fixo "4"
Texto modificado, idioma: PT (37 caracteres):
"Preço Mercado Interno - /PWS/ZYTPT902"
Excluído valor fixo "5"
Incluído valor fixo "5"
Texto modificado, idioma: PT (60 caracteres):
"Preço Parâmetro - /PWS/ZYTPT902 Verificando Lista de Revenda"
Excluído valor fixo "6"
Incluído valor fixo "6"
Texto modificado, idioma: PT (50 caracteres):
"Preço Parâmetro - /PWS/ZYTPT904 - Lista de Consumo"
Excluído valor fixo "7"
Incluído valor fixo "7"
Texto modificado, idioma: PT (31 caracteres):
"Preço Parâmetro - /PWS/ZYTPT002"
Excluído valor fixo "8"
Incluído valor fixo "8"
Texto incluído, idioma: PT (43 caracteres):
"Preço Parâmetro - /PWS/ZYTPT904 - Acumulada"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/ZYTPR042
...
r_proc_904-sign =
r_met_002-sign =
r_proc_902-sign = 'I'.
r_lista-option =
r_proc_904-option =
r_met_002-option =
r_proc_902-option = 'EQ'.
LOOP AT t_007.
CASE t_007-tipo.
WHEN '1'
* >> Início da inclusão: FORM SELECAO_DADOS
OR '9'
* << Fim da inclusão
OR '2'
OR '3'
OR '4'.
r_proc_902-low = t_007-processo.
COLLECT r_proc_902.
WHEN '5'.
r_proc_902-low = t_007-processo.
COLLECT r_proc_902.
r_proc_904-low = t_007-processo.
COLLECT r_proc_904.
...
...
ELSE.
p_calc-grupo = p_901-grupo.
ENDIF.
p_calc-sig_metodo = p_001-sig_metodo.
p_calc-cod_metodo = p_001-cod_metodo.
MOVE-CORRESPONDING p_calc TO t_detalhe.
CATCH SYSTEM-EXCEPTIONS arithmetic_errors = 1.
LOOP AT p_902 WHERE matnr IN p_matnr.
LOOP AT t_007_aux
WHERE processo = p_902-processo
* >> Início da exclusão: FORM CALCULAR_METODO
AND tipo <= '4'.
* << Fim da exclusão
* >> Início da inclusão: FORM CALCULAR_METODO
AND ( tipo <= '4' OR tipo = '9' ).
* << Fim da inclusão
ADD t_007_aux-ajuste TO v_aj_906.
IF t_007_aux-fator = fator_safe90.
v_fator_safe = fator_safe90.
ENDIF.
CASE t_007_aux-tipo.
* >> Início da exclusão: FORM CALCULAR_METODO
WHEN '1'.
* << Fim da exclusão
* >> Início da inclusão: FORM CALCULAR_METODO
WHEN '1'
OR '9' .
IF t_007_aux-tipo = '1' AND p_902-mes = '00'.
CONTINUE.
ENDIF.
* << Fim da inclusão
IF p_safe = 'X'.
CHECK p_902-pais IN r_pais_fav.
ENDIF.
ASSIGN COMPONENT t_007_aux-campo
OF STRUCTURE p_902 TO <valor>.
IF sy-subrc EQ 0.
IF NOT /pws/zytpt056-fator IS INITIAL AND
t_007_aux-fator = fator_prtc.
<valor> = <valor> * /pws/zytpt056-fator.
ENDIF.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/ZYTPR043
...
ENDLOOP.
r_proc_904-sign =
r_met_002-sign =
r_proc_902-sign = 'I'.
r_proc_904-option =
r_met_002-option =
r_proc_902-option = 'EQ'.
LOOP AT t_007.
CASE t_007-tipo.
WHEN '1'
* >> Início da exclusão: FORM SELECIONAR_DADOS
OR '2'.
* << Fim da exclusão
* >> Início da inclusão: FORM SELECIONAR_DADOS
OR '2'
OR '9'.
* << Fim da inclusão
r_proc_902-low = t_007-processo.
COLLECT r_proc_902.
WHEN '5'.
r_proc_902-low = t_007-processo.
COLLECT r_proc_902.
r_proc_904-low = t_007-processo.
COLLECT r_proc_904.
WHEN '6'
OR '8'.
r_proc_904-low = t_007-processo.
...
...
INTO TABLE t_007
FOR ALL ENTRIES IN t_001
WHERE bukrs_g EQ p_bukrsg
AND cod_metodo EQ t_001-cod_metodo.
IF sy-subrc NE 0.
MESSAGE s079(/pws/zytpm) WITH text-006.
STOP.
ENDIF.
DELETE t_007
WHERE tipo <> '1'
* >> Início da inclusão: FORM SELECIONAR_PARAMETROS
AND tipo <> '9'
* << Fim da inclusão
AND tipo <> '2'
AND tipo <> '5'
AND tipo <> '6'
AND tipo <> '7'
AND tipo <> '8'.
SELECT * FROM /pws/zytpt026
INTO TABLE t_026
WHERE sysid = sy-sysid
AND bukrs_g IN (p_bukrsg, space).
SELECT * FROM /pws/zytpt012
...
...
ENDLOOP.
ELSE.
WRITE: / text-018.
ENDIF.
ENDFORM.
FORM verificar_metodos TABLES p_matnr
USING p_001 STRUCTURE /pws/zytpt001
CHANGING praticado
parametro.
LOOP AT t_007 WHERE cod_metodo = p_001-cod_metodo
* >> Início da exclusão: FORM VERIFICAR_METODOS
AND tipo = '1'.
* << Fim da exclusão
* >> Início da inclusão: FORM VERIFICAR_METODOS
AND ( tipo = '1' OR tipo = '9' ).
* << Fim da inclusão
LOOP AT t_902 WHERE matnr IN p_matnr
AND processo = t_007-processo.
* >> Início da inclusão: FORM VERIFICAR_METODOS
IF t_902-mes = '00' AND t_007-tipo = '1'.
CONTINUE.
ENDIF.
* << Fim da inclusão
praticado = 'X'.
EXIT.
ENDLOOP.
IF praticado = 'X'.
EXIT.
ENDIF.
ENDLOOP.
IF praticado = 'X'.
LOOP AT t_007 WHERE cod_metodo = p_001-cod_metodo
* >> Início da exclusão: FORM VERIFICAR_METODOS
AND tipo <> '1'.
* << Fim da exclusão
* >> Início da inclusão: FORM VERIFICAR_METODOS
AND tipo <> '1' AND tipo <> '9'.
* << Fim da inclusão
IF t_007-tipo = '2'.
LOOP AT t_902 WHERE matnr IN p_matnr
AND processo = t_007-processo.
READ TABLE t_026
WITH KEY cod_metodo = p_001-cod_metodo
processo = t_007-processo.
IF sy-subrc NE 0.
parametro = 'X'.
EXIT.
ELSE.
...