Skip to Content

Solução de Problemas com Técnica de Condições e Criação de Registros de Condição

Soluções para problemas comuns e mensagens de erro



Veja as soluções para problemas mais comuns e principais mensagens de erro na nota 886773 FAQ General questions condition technique (em inglês).



Tome cuidado ao criar registros de condição com data de validade 31.12.9999:


Quando um registro de condição é criado na transação VK11, o sistema automaticamente preenche a data de validade com 31.12.9999

Caso essa data seja mantida, poderá acarretar em problema mais adiante.


Criamos um outro registro de condição para a mesma combinação de cliente/material, e com isso o registro criado originalmente é dividido.


No exemplo abaixo, outros 2 registros de condição foram criados, e cada um é válido por um período de tempo limitado.



Esse registro de condição é válido no intervalo de validade definido, e nesse período o primeiro registro com valor de 88 EUR não é válido. É possível verificar que o novo registro está interceptando o primeiro, que aparece ser válido apenas até a data de início do novo registro quando usamos uma data que pertence ao primeiro período de validade para checar:



Um terceiro registro é válido a seguir, no período de 01.03.2013 até 31.12.2013:



Agora se checarmos os períodos de validade dessa combinação de condições de preço, selecionando o registro e clicando no botão de validade (ou executando com F8), parece que existe um quarto registro:



Na realidade não é isso que ocorre. Esse é o mesmo registro que foi inicialmente criado. A sua validade foi dividida pelos 2 registros criados na sequência e válidos no meio dele. Depois do fim da validade do terceiro registro, o primeiro registro volta a ser válido pois foi criado com a data de validade ilimitada de 31.12.9999.


Isso pode ser verificado no banco de dados olhando para os registros de condição na tabela KONH, onde existem apenas 3 registros:



A maneira mais rápida e mais conveniente de se obter os números dos registros de condição (campo KNUMH nas tabelas KONH e KONP) é debugando pela transação VK12, colocando o /h no campo de comando e então configurando um watchpoint no campo XKONP-KNUMH:



Depois que o debug foi ativado, selecione o registro de condição e clique no botão de validade como indicado acima. A partir daí verifique os valores no campo que está configurado como watchpoint:



Com os números de registro coletados do campo XKONP-KNUMH, será possível verificar pela transação SE16 e tabela KONH, inserindo os números no campo KNUMH.


Qualquer mudança que seja feita ao registro original afetará os 2 períodos em que está válido.


Para evitar essa divisão do período de validade, deve-se evitar manter a data de validade como 31.12.9999. Ou então, ao criar um novo registro, deve-se alterar a data de validade do registro original para o dia anterior a data de início do novo registro. No exemplo mostrado aqui seria 30.11.2011.


Uma outra nota relevante com relação a períodos de validade dos registros de condição é a nota 66943 Validity periods in condition records


Tags: