2. O esquema de cálculo de preços define os tipos de condição válidos e a seqüência em que aparecem na ordem do cliente. No exemplo, a partir do primeiro tipo de condição (PR00) no esquema de cálculo, o sistema começa a pesquisa por um registro de condição válido;
3. Cada tipo de condição do esquema de cálculo pode ter uma seqüência de acesso atribuída a ele. Nesse caso, o sistema utiliza a seqüência de acesso PR00. O sistema verifica os acessos até encontrar um registro de condição válido. (Embora isso não possa ser visto no diagrama, cada acesso define uma tabela de condições específica. A tabela fornece a chave com que o sistema pesquisa os registros).
4. No exemplo, o primeiro acesso (a pesquisa de um preço de material específico de cliente) não é bem-sucedido. O sistema passa para o acesso seguinte e encontra um registro válido.
5. O sistema determina o preço de acordo com as informações gravadas no registro de condição. Se existir uma escala de preços, o sistema calcula o preço adequado. No exemplo, o item de ordem do cliente pede 120 unidades do material. Ao utilizar o preço de escala que se aplica a quantidades de 100 unidades ou mais, o sistema determina um preço de US$ 99 por unidade.
TIPOS DE CONDIÇÕES
São representações de determinados cálculos ou determinações de acordo com necessidades do usuário. É possível definir um tipo de condição específico para cada tipo de preço, dedução ou sobretaxa ocorrido nas transações comerciais. Pode-se, também, definir que determinadas condições sejam determinadas automaticamente e que outras sejam fornecidas manualmente ou, ainda, definir que as mesmas serão calculadas a partir de fórmulas próprias.
Exemplo :
O usuário deseja que o sistema calcule um percentual de dedução com base nas quantidades solicitadas pelo cliente (por exemplo, uma dedução de 1% a partir de 100 unidades de venda). Também é possível determinar que o sistema calcule a dedução com base no peso total (bruto) da mercadoria sendo adquirida (por exemplo: uma dedução de US$ 0,20 por kg, a partir de cada 100 quilos adquiridos). Para se utilizar as duas possibilidades, é preciso definir dois tipos diferentes de condição
TABELAS DE CONDIÇÕES
Definem a combinação de campos (as chaves) que identificam um registro de condição individual. Um registro de condição consiste na maneira como o sistema grava os dados de condição específicos entrados no sistema como registros de condição. Uma tabela é criada a partir de uma lista de campos (catálogo) que é parametrizável, ou seja, pode-se inserir nas estruturas do catálogo de campos quaisquer campos que sejam necessários para a determinação de preços. Note que nem todos os campos que podem ser selecionados conterão valores no momento da determinação de preço. Veremos como "driblar" este problema em tópicos posteriores.
Exemplo : Cada área de vendas da empresa deseja ter uma lista de preços contendo os preços de todos os seus produtos, agrupados de maneira diferenciada.
SEQUENCIAS DE ACESSOS
É uma estratégia de pesquisa que o sistema utiliza para encontrar dados válidos para um determinado tipo de condição. Ela determina a seqüência em que o sistema pesquisa os dados. A seqüência de acesso é composta de um ou mais acessos. A seqüência dos acessos estabelece quais registros de condição têm prioridade sobre os outros. Os acessos indicam ao sistema onde procurar em primeiro lugar, em segundo e assim por diante, até encontrar um registro de condição válido. Pode-se orientar o sistema para que, quando se achar um registro de condição em uma tabela, que se interrompa a procura nas demais tabelas (exclusiva) ou exigir do mesmo que a pesquisa seja feita em todas. O usuário deve indicar uma seqüência de acesso para cada tipo de condição para o qual deseja criar registros de condição.
É uma estratégia de pesquisa que o sistema utiliza para encontrar dados válidos para um determinado tipo de condição. Ela determina a seqüência em que o sistema pesquisa os dados. A seqüência de acesso é composta de um ou mais acessos. A seqüência dos acessos estabelece quais registros de condição têm prioridade sobre os outros. Os acessos indicam ao sistema onde procurar em primeiro lugar, em segundo e assim por diante, até encontrar um registro de condição válido. Pode-se orientar o sistema para que, quando se achar um registro de condição em uma tabela, que se interrompa a procura nas demais tabelas (exclusiva) ou exigir do mesmo que a pesquisa seja feita em todas. O usuário deve indicar uma seqüência de acesso para cada tipo de condição para o qual deseja criar registros de condição.
Exemplo : Um departamento de vendas pode oferecer aos clientes diversos tipos de preços. O departamento pode criar, por exemplo, os seguintes registros de condição:
- Um preço básico para um material
- Um preço especial específico de cliente para o mesmo material
- Uma lista de preços para clientes importantes
- Durante o processamento da ordem o departamento deseja que seja pesquisado cada um dos possíveis preços para o cliente, mas prevalecendo o preço acordado com o mesmo.
EXCLUSÃO DE CONDIÇÃO
Na determinação de preço para documentos de venda e faturamento, é possível aplicar mais de um registro de condição a determinado item. É possível utilizar o processo de exclusão de condições para comparar as condições possíveis e determinar, por exemplo, o melhor preço para um cliente ou, ainda, na eventualidade de se existirem duas condições pré-determinadas ao mesmo tempo, que se mantenha apenas uma delas.
Na determinação de preço para documentos de venda e faturamento, é possível aplicar mais de um registro de condição a determinado item. É possível utilizar o processo de exclusão de condições para comparar as condições possíveis e determinar, por exemplo, o melhor preço para um cliente ou, ainda, na eventualidade de se existirem duas condições pré-determinadas ao mesmo tempo, que se mantenha apenas uma delas.
CRIANDO OS TIPOS DE CONDIÇÕES
A parametrização das características do Tipo de condição está dividida em grupos de campos que são os seguintes :
Dados de Controle 1: Determina que tipo de condição está sendo criada e algumas regras de processamento;
Condição de Grupo: Indica se o sistema deve tratar a condição individualmente ou como parte de um grupo;
Possibilidades de Modificação: Indica como a condição poderá ser alterada;
Dados Mestre: Configura-se como os dados serão propostos, gerados e controlados;
Escalas: Determina os controles de escala da condição;
Dados de Controle 2: Determinar outras regras complementares de processamento da condição;
Determinação de Texto: Indica atribuições de determinação de texto para a condição.
Possibilidades de Modificação: Indica como a condição poderá ser alterada;
Dados Mestre: Configura-se como os dados serão propostos, gerados e controlados;
Escalas: Determina os controles de escala da condição;
Dados de Controle 2: Determinar outras regras complementares de processamento da condição;
Determinação de Texto: Indica atribuições de determinação de texto para a condição.
DELIMITANDO VALORES PARA OS TIPOS DE CONDIÇÕES:
O intuito da delimitação de valores para tipos de condição é impedir que valores acima ou abaixo do esperado para uma condição sejam calculados ou lançados manualmente. Isto é particularmente útil para prevenir erros de cálculo em condições que são calculadas ou entradas manualmente. Para se criar valores de delimitação, basta acessar a rotina em questão e se cadastrar os valores para o tipo de condição que se deseja delimitar.
OTIMIZANDO SEQUENCIA DE ACESSOS:
Pode-se otimizar o acesso às tabelas da sequência determinando-se que o R/3 utilize como primeiro acesso os campos disponíveis no cabeçalho do documento. Isto melhora significativamente a performance de procura, pois o R/3 irá efetuar a busca de dados das sequências primeiramente com os dados de cabeçalho e, para aquelas tabelas onde ele encontrar dados, não será efetuada a pesquisa por item. Logicamente, as tabelas deverão ter campos que estejam no cabeçalho do documento, caso contrário a operação é inviável. É justificável efetuar esta parametrização quando se utiliza muitos itens no documento de vendas, pois a operação de busca da sequência de acesso é efetuada para cada um deles. Para tanto basta acessar a rotina em questão e indicar para qual sequência e qual tabela da sequência deve-se procurar os dados com otimização.
FÓRMULA DE CÁLCULO NA PRICING
Determina uma rotina interna do R/3 (ou uma rotina desenvolvida pelo cliente) que efetua o cálculo do valor da condição. Pode-se utilizar aqui as variáveis que se definiu anteriormente na coluna de sub-totais, bem como acessar outras bases de dados, ou ainda, acessar os dados de outras condições do esquema sendo processado.
DICAS:
- Na memória, os dados de pricing estão armazenados nas tabelas internas XKOMV, KOMP e KOMK;
- As fórmulas de cálculo não devem utilizar o comando LOOP a menos que se guarde a posição atual da linha do pricing, caso contrário, todas as condições abaixo da linha em questão serão desconsideradas e substituídas pela linha atual;
- Internamente o SAP guarda os valores multiplcados por 1000, 10000 e 100000. Depende da variável;
- Após se efetivar o cálculo, deve-se atribuir o resultado à variável XKWERT, que é a variável de valor da condição. Esta variável é automaticamente transferida para a linha de valor do esquema.
SUBTOTAL - CONDIÇÃO:
Controla se os valores de condição ou os subtotais devem ser gravados temporariamente e em que campos (na memória ou na base de dados) os mesmos serão gravados. Se o mesmo campo for indicado para gravar diferentes valores de condição, o R/3 somará todos os valores. Estes valores de condição ou subtotais servem, por exemplo, como referência para outros cálculos. Dica: Para que exista análise de crédito, deve-se atribuir uma condição ao sub-total "A".
FÓRMULA DE BASE:
Determina uma rotina interna do R/3 (ou uma rotina desenvolvida pelo cliente) que determina o valor base da condição ou linha sendo processada. Pode-se utilizar aqui as variáveis que se definiu anteriormente na coluna de sub-totais, bem como acessar outras bases de dados, ou ainda, acessar os dados de outras condições do esquema sendo processado. Quando se define níveis inicial e final, os valores somados das linhas referenciadas são armazenados aqui. Este valor será utilizado para o cálculo da linha.
Dica: Após se efetivar a determinação da base, deve-se atribuir o resultado à variável XKBETR, que é a variável de valor de base da condição. Esta variável é automaticamente transferida para a linha de base do esquema.
Fonte: Felipe Siveira
Nenhum comentário:
Postar um comentário
Observação: somente um membro deste blog pode postar um comentário.