Introdução ao SAP Billing Revenue Innovation Management (BRIM)
Navegando com eficiência pelas interfaces de usuário do SAP Convergent Charging
Explicação dos dados mestre do cliente: conta de assinante, conta externa e contrato de cobrança
Criar taxas
Explicação das diferenças entre tipos de tabela
Utilização de macros de determinação do preço e compreensão da replicação de preços/condições para taxas recorrentes
Criar planos de taxas
Explorar créditos para consumo
Explicação da arquitetura e integração
Uso de Web Services e APIs Java
Administrar operações

Configuração do planejamento de preços

Objectives

After completing this lesson, you will be able to:
  • Explique o objetivo do planejamento de preços.
  • Explicar os módulos dos planejamentos de preços.
  • Explique os três tipos de taxa disponíveis.
  • Explique os componentes lógicos comuns.

Introdução aos planos de preços

Divisor óptico

No SAP Convergent Charging, a lógica de cálculo de preço é criada mediante a montagem de árvores de decisão que contêm componentes simples. Esses componentes são módulos que você pode reunir para atender às suas necessidades empresariais.

Exemplo de uma estrutura em árvore e sua configuração

Na figura acima, a parte esquerda da janela mostra um exemplo de estrutura em árvore. À direita, é exibida a configuração do componente selecionado.

Módulos de planos de preços

No momento da execução, as taxas são calculadas executando determinadas partes da lógica de árvore. Cada nó na árvore representa um componente, que executa uma operação bem definida, como adicionar dois números, comparar dois números ou ler a partir de uma tabela. A estrutura em árvore de um planejamento de preços pode ser separada em três camadas:

1. Nível de tarifa
É aqui que as taxas de sua cobrança estão definidas. Na figura abaixo, esta área é destacada em amarelo.
2. Nível algorítmico
Neste nível, as lógicas de cálculo estão localizadas. Vários componentes lógicos são combinados para formar a lógica de cálculo de preço para o(s) seu(s) serviço(s). Na figura abaixo, esta área é destacada em azul. Cada componente lógico está atribuído a uma das três categorias:
  1. Comparadores
  2. Divisores
  3. Operadores
3. Nível de função

As funções são as folhas da sua lógica de árvore de cálculo. Eles atribuem um valor numérico calculado ao montante cobrado pela taxa. Na figura abaixo, são destacadas as funções lidas.

Dependendo da estrutura do seu planejamento de preços, várias funções podem ser adicionadas ao montante final da sua taxa. As funções não só cuidam da atribuição, mas também vêm com seu próprio conjunto básico de funções aritméticas.

Vamos primeiro passar por todos os tipos de componentes disponíveis para fornecer a você o panorama geral. Depois de saber quais componentes estão disponíveis e quais eles fazem, você verá a montagem de um planejamento de preços no sistema.

Tipos de tarifa disponíveis

Você começará com o nível de tarifa. Cada planejamento de preços deve começar com um componente de taxa. A taxa define que tipo de taxa será calculada e cobrada. O SAP Convergent Charging fornece três tipos de componentes de taxa:

1. Taxa de utilização
As taxas de utilização processam itens cobráveis de uma determinada classe de item cobrável. O plano de preços abaixo de uma tarifa desse tipo tem acesso às características do item cobrável processado pela taxa. Para cada item cobrável processado, a taxa pode criar uma transação de saída, que é enviada para o sistema de faturamento.
2. Taxa recorrente
As taxas recorrentes calculam taxas baseadas no tempo de forma recorrente. Eles não processam itens cobráveis, mas podem ser acionados indiretamente por itens cobráveis durante o chamado "processo de ativação". Você aprenderá mais tarde, o que isso significa.
3. Taxa única
As taxas únicas calculam taxas em determinados eventos, o que geralmente só ocorre uma vez para uma cobrança. Esses eventos são a ativação, suspensão ou retomada de uma taxa como parte de um item do contrato.

Taxas de utilização

Uma taxa de utilização é simples de configurar. Ele só precisa referenciar uma classe de item cobrável. Você pode adicionar várias taxas de utilização a uma taxa, desde que cada uma se refira a uma classe de item cobrável diferente. Dessa forma, sua taxa pode lidar com diferentes tipos de utilização de serviço, sendo cada tipo representado por uma classe de item cobrável dedicada.

O local na árvore para criar uma taxa de utilização.

Taxas recorrentes

As taxas recorrentes representam taxas que são acionadas regularmente sem a necessidade de processar um item cobrável. O SAP Convergent Charging acionará essas taxas automaticamente quando um contrato for "ativado". Você aprenderá mais tarde sobre o processo de ativação. Por enquanto, pense nisso como um processo automatizado, o que fará com que o SAP Convergent Charging calcule as taxas em uma base recorrente e crie os itens cobrados correspondentes até um determinado momento ao longo do ciclo de vida do contrato.

O local na árvore para criar uma Taxa recorrente.

Quando se trata do modelo de recorrência exato, o SAP Convergent Charging oferece muita flexibilidade. No vídeo a seguir, você passará por casos de utilização cada vez mais desafiadores, configurará a taxa recorrente de acordo com o requisito e visualizará as modificações resultantes no comportamento do sistema.

Taxas de um chute a gol

Taxas únicas – como o nome indica – são taxas, que são acionadas quando uma determinada condição é atendida. O SAP Convergent oferece três condições diferentes:

Ativação
Uma única vez acionado na ativação cobrará uma taxa no início do primeiro período de validade de um item do contrato.
Suspensão
Quando um item do contrato termina, é acionada uma taxa de suspensão. Quando um item do contrato é encerrado, iniciado mais tarde novamente e finalizado novamente após algum tempo, uma taxa de suspensão é acionada cada vez que o item do contrato é encerrado.
Retomada
Quando um item do contrato é encerrado, mas iniciado mais tarde novamente, é acionada uma taxa de retomada. O item do contrato foi encerrado e reiniciado após uma pausa várias vezes, cada vez que o item estiver se tornando válido novamente, uma taxa de retomada será acionada.

O gráfico abaixo ilustra quando cada taxa única é acionada.

Exemplo, quando as taxas únicas são acionadas

No SAP Billing Revenue and Innovation Management, as taxas únicas, como taxas de ativação, são normalmente acionadas pelo SAP Subscription Order Management e ignoram o SAP Convergent Charging completamente. Portanto, pode-se ter a sensação de que as taxas de um tiro são inúteis. Há certos casos, no entanto, onde as taxas de um tiro podem ser úteis. Ao calcular descontos no SAP Convergent Charging, esses descontos só podem ser aplicados quando todas as taxas a serem consideradas no processo de desconto forem processadas pelo SAP Convergent Charging.

Funções

Cada ramo da árvore do planejamento de preços deve terminar com uma função. Uma função pode ter um de quatro objetivos:

  1. Atribua uma característica numérica ao montante tarifado de uma cobrança.

    Como aprenderemos nesta lição, pode acontecer que mais de uma função seja adicionada ao montante avaliado total de uma cobrança. Normalmente, esta atribuição é combinada com o suporte para um cálculo de um determinado tipo. As seguintes funções têm esse objetivo:

    • Simples
    • Genérico
    • Linear
    • Polinomial
  2. Cancelar o cálculo da taxa e suprimir a criação de um item cobrado.

    Isso geralmente é feito quando um serviço é gratuito. A função usada para isso é chamada: Livre.

  3. Chamar macro de determinação do preço

    Macros podem ser entendidas como formas de criar árvores de preços reutilizáveis. Eles são semelhantes a subprogramas na programação, que você pode chamar a partir de outros programas, para que você não precise escrevê-los várias vezes. Vamos aprender como este componente é usado quando cobrimos macros de preços. A função utilizada para esse fim é chamada: Função macro.

  4. Acione um erro e cancele o processo de determinação de tarifas da taxa atual.

    Isso geralmente é efetuado quando não foi possível determinar o preço para um serviço por algum motivo. A função usada aqui é chamada: Sem acesso.

    Funções disponíveis

Vamos ver os quatro tipos de função mais detalhadamente:

Funções Atribuir montantes

Não passaremos por todas as quatro funções em detalhes. A função mais comum do conjunto é a função "Flat". Os componentes solicitam a seleção de uma propriedade numérica como "Valor fixo". O valor da propriedade selecionada será adicionado ao valor cobrado pelo encargo.

Função com montante atribuído.

O componente Linear permite selecionar um "Nome de propriedade" e um "Montante em escala" adicionais, que são multiplicados e adicionados a um Montante fixo. Esta função permite executar uma fórmula como:

A*B+C

Em que A, B e C podem ser propriedades numéricas. O resultado é adicionado ao montante cobrado pela taxa.

Exemplo de uma taxa.

O mesmo cálculo pode ser feito com o componente de cálculo aritmético que aprenderemos no restante desta lição. A vantagem da função linear é que ela combina o cálculo e a atribuição do resultado ao montante cobrado em um componente.

A função "Gratuito"

Sempre que um serviço é gratuito, você tem uma das duas opções:

  1. Crie um item cobrado com um montante de 0 para indicar explicitamente que sua utilização do serviço é gratuita.
  2. Suprimir a criação de um item cobrado em primeiro lugar.

Este último pode ser alcançado usando a função Livre. Ele não tem configurações específicas.

Nota

Como você pode lembrar, uma função livre não acionará nenhuma taxa dependente. Quando você precisar garantir que todas as taxas dependentes são executadas, utilize uma função plana em vez disso e atribua um montante de 0. Deste modo, você criará um item cobrado com um montante de 0, mas todos os custos dependentes serão acionados.

A função "Sem acesso"

As lógicas de avaliação podem ser executadas em condições que não permitem calcular um montante com êxito. Isso pode ser devido a uma falha ao encontrar o preço correto, porque faltam dados de entrada obrigatórios ou porque os dados de entrada estão inconsistentes. Em todas essas situações, o processo de determinação de tarifas deve ser encerrado e o erro deve ser comunicado de volta ao chamador.

O componente No Access espera uma mensagem descrevendo o problema que a lógica de classificação encontrou. Esta mensagem deve ser descritiva e breve. Quando o SAP Convergent Charging for utilizado em combinação com o SAP Convergent Invoicing, a mensagem de erro será enviada de volta para o SAP Convergent Invoicing, que a armazenará em seu banco de dados para referência posterior. Uma vez que existe um comprimento máximo de mensagem que o SAP Convergent Invoicing pode armazenar, as mensagens que excedem este máximo serão truncadas, o que pode dificultar as análises da causa raiz do erro.

Exemplo da função Sem acesso.

Abaixo da mensagem, todas as características disponíveis no contexto de avaliação estão disponíveis para seleção. Você deve marcar as caixas de todas as características necessárias para uma análise de causa raiz, mas considere o comprimento máximo de uma mensagem de erro. Os nomes e valores de tempo de execução de todas as características que você selecionou serão adicionados à mensagem de erro. Como resultado, a determinação de quantas características caberão na mensagem antes de o SAP Convergent Invoicing truncar a cadeia é difícil de dizer, uma vez que depende do comprimento de todos os valores de tempo de execução de característica.

Componentes lógicos

Comparadores

Os comparadores são componentes, que comparam dois ou mais valores entre si, e ramificam a lógica de árvore em duas ou mais ramificações, dependendo do resultado. Vamos dar-lhe uma introdução detalhada aos componentes comparadores mais utilizados. Os restantes serão listados, mas não explicados detalhadamente. A documentação fornecerá os detalhes necessários sempre que precisar deles mais tarde. Dois dos componentes mais utilizados permitem a você ler a partir de tabelas. Esses dois componentes são descritos nas lições Utilização de tabelas de mapeamento e Utilização de tabelas de intervalos.

A figura seguinte exibe a lista de componentes de comparador disponíveis quando você passa o mouse sobre o ícone correspondente.

Lista de comparadores

Os componentes mais utilizados são:

  • Introdutor de tabela de mapeamento
  • Números
  • Comutação de prefixo
  • Introdutor de tabela de intervalos
  • Cadeias de caracteres

Números

Com o componente de comparador de números, você pode comparar dois números entre si.

Números

Como nome da propriedade, selecione a propriedade number para comparar.

Como valor de comparação, selecione a propriedade number para comparar a primeira propriedade com. O valor de comparação também permite inserir um número estático, que não é lido de uma propriedade. Como esses números são fixados no tempo de design, isso é bastante incomum e inflexível.

Como operador, você pode selecionar a partir de uma lista de operações de comparação no tempo de design:

  1. É igual a
  2. É maior que
  3. É menor que
  4. É maior que ou igual a
  5. É menor ou igual a

A instrução verificada será:

<Property Name> <operator> <Comparison Value>

Por exemplo:

NUMBER1 is greater than NUMBER2

O componente tem duas ramificações para continuar. Cada um deles descreve um dos resultados possíveis. Somente a ramificação que corresponde ao resultado da comparação será executada após a comparação.

Exemplo de NUMBER

Um exemplo de caso de utilização seria cobrar sempre o montante maior de dois montantes disponíveis.

Cadeias de caracteres

O componente de comparador de strings é semelhante ao componente de comparador de números.

O componente de comparador de strings

Ele compara duas strings entre si. Você escolherá duas cadeias a serem comparadas (um "valor de propriedade" e um "valor de comparação") e selecionará uma operação da seguinte lista:

  1. É igual a
  2. Começa com
  3. Termina com
  4. Contém

Novamente, o valor de comparação permite inserir uma cadeia estática como o valor de comparação, que é uma configuração bastante estática e inflexível e, por isso, deve ser impedida.

A instrução verificada será:

<Property Name> <operator> <Comparison Value>

Por exemplo:

STRING1 starts with STRING2

O resultado pode ser verdadeiro ou falso. O componente tem duas ramificações de saída correspondentes, uma para cada um dos resultados possíveis da comparação. A ramificação que corresponde ao resultado da comparação será executada.

Exemplo da sintaxe do comparador de cadeias.

Comutação de prefixo

O componente de comparador de comutação de prefixo é semelhante a um componente de comparador de cadeia, mas só permite verificar se o valor de uma determinada propriedade de cadeia começa com um conjunto de valores de prefixo, ou nenhum dos prefixos indicados. Os prefixos devem ser indicados explicitamente no tempo de design e não podem ser fornecidos por uma propriedade.

Definição de prefixos.

O componente fornece uma ramificação de saída para cada prefixo que você deseja verificar. É fornecida uma ramificação padrão adicional, que é executada quando a verificação de propriedade não começa com nenhum dos prefixos fornecidos. Como resultado, é executada exatamente uma das ramificações de saída.

Exemplo da sintaxe de prefixos

Nota

No entanto, considere que a sequência na qual os prefixos são verificados é importante. Imagine a seguinte lista de prefixos verificada pelo componente de comparador de comutação de prefixo na sequência indicada:

  1. AB
  2. ABC
  3. DEF

Como um valor "ABCDE" começa com "ABC", mas ao mesmo tempo também começa com "AB", o primeiro prefixo na lista será sempre considerado a primeira ocorrência e a lógica correspondente será sempre executada para esses casos. O segundo prefixo nunca será atingido desta forma. Por isso, é importante ordenar a lista de elementos de prefixo de modo que os prefixos mais específicos sejam listados primeiro, seguidos pelos mais gerais:

  1. ABC
  2. AB
  3. DEF

Comparadores restantes

Os demais comparadores não serão explicados detalhadamente. A lista seguinte fornece uma síntese de todos os componentes com uma breve descrição de seus objetivos.

Síntese de todos os componentes

Comparador/componenteDescrição
Data/horárioPermita a configuração de um horário diário, semanal, mensal ou anual e uma data para comparação com o padrão de horário. O componente verifica se a data fornecida está localizada na faixa de tempo ou fora dela.
DatasPermite comparar com propriedades de data. O componente pode verificar se uma data é igual a, depois, estritamente depois, antes ou estritamente antes da outra. O componente também pode verificar se a primeira data tem o mesmo dia da semana, dia do mês, mês ou ano que a segunda data. A verificação também pode ocorrer em qualquer combinação desses critérios.
Comutação de intervaloCompara uma propriedade numérica com um conjunto de intervalos numéricos fornecidos no tempo de design. O componente fornece uma ramificação de saída por intervalo, bem como uma ramificação padrão, que é executada quando nenhum dos intervalos é aplicável. Se o valor da característica de número fornecida estiver localizado em um dos intervalos indicados, a respectiva ramificação de saída é executada. Se nenhum intervalo for atingido, a ramificação padrão é executada.
Introdutor de tabela de mapeamentoLê a partir de uma tabela de mapeamento com um conjunto de critérios de pesquisa. O componente ramifica em duas ramificações: uma é executada quando uma entrada foi encontrada, a outra é executada quando não foi encontrada nenhuma entrada. Este componente é abordado mais detalhadamente quando as tabelas de mapeamento são introduzidas.
FeriadosCompara uma determinada data com um conjunto de feriados. Os feriados são atualizados por meio de um arquivo xml, que pode ser exportado e importado com a ferramenta principal. Se a data fornecida estiver em um dos feriados selecionados a serem verificados, o componente executa uma filial de saída. Caso contrário, a outra ramificação de saída é executada.
Introdutor de tabela de intervalosVerifica uma tabela de intervalos e ramifica em um conjunto de ramificações de saída dependendo da localização da característica numérica relativamente aos intervalos. Este componente é abordado mais detalhadamente quando as tabelas de mapeamento são introduzidas.
ComutaçãoEste componente trabalha com contas pré-pagas em vez de contas externas. Ele verifica o status de uma referência de conta pré-paga fornecida no dicionário de referências internas do plano de recarga. Você pode verificar qualquer status da conta pré-paga. Dependendo do status em que a conta pré-paga se encontra (ativo, bloqueado, fechado, bloqueado), o componente executa a filial de saída correspondente.

Divisores

Ao contrário dos comparadores, os divisores permitem executar várias ramificações de saída de um componente. Em uma maneira de falar, os divisores dividem o fluxo de controle em vários ramos com base em uma regra.

Lista de divisores disponíveis.

Divisor de números

O componente divisor mais proeminente é provavelmente o separador de número. O seu objetivo é dividir um valor numérico em duas partes em um determinado valor limiar.

Vejamos um exemplo:

Suponha que seu cliente usou seu serviço para um determinado número de unidades. O assinante do serviço recebeu uma determinada quantidade de unidades de utilização de serviço gratuito, que você precisa liquidar em relação à utilização reportada pelo sistema de medição antes de poder determinar quanto cobrar.

SERVICE_USAGE: X Units

FREE_USAGE: Y units

Uma vez que a sua lógica de cálculo do preço não pode dizer se a utilização do serviço ao cliente está abaixo ou acima do montante de utilização livre ainda disponível para o cliente, ela deve efetuar primeiro uma comparação. Dependendo do resultado, o cálculo aritmético correto precisa ser efetuado para que o resultado possa ser processado corretamente. Este cálculo pode ser:

  1. SERVICE_USAGE – FREE_USAGE se o volume de utilização de serviço gratuito ainda disponível for inferior à quantidade de serviço consumida. O resultado pode ser cobrado e o saldo de utilização de serviço gratuito será definido como 0.
  2. FREE_USAGE – SERVICE_USAGE se o volume de serviço gratuito ainda disponível for superior à quantidade de serviço consumida. O resultado será deduzido do saldo de uso gratuito e nada será cobrado.

Isto é bastante complicado, e o divisor pode ajudar a simplificar este cálculo. Na configuração, você selecionará um "Nome de propriedade" numérico contendo o número a ser dividido em duas partes. Como "Split Value", outra propriedade numérica precisa ser selecionada, que contém o limite no qual a primeira propriedade deve ser dividida. Considere que você também pode inserir um número estático aqui, mas como isso é bastante estático, isso geralmente não é efetuado.

O componente espera que você forneça os nomes das propriedades numéricas nas quais ele escreverá o resultado da operação de partição. A primeira propriedade receberá o valor de "Property Name" até "Split Value", enquanto a segunda receberá qualquer valor de "Property Name" além de "Split Value".

Vamos ver como o componente seria configurado para o exemplo fornecido acima.

Exemplo das configurações de um separador de números.

A propriedade a ser dividida aqui é "SERVICE_USAGE". Como valor de partição, foi fornecido o contador "FREE_USAGE". O resultado da partição é escrito nas propriedades "USAGE_FREE_OF_CHARGE" e "USAGE_TO_CHARGE", respectivamente.

Vamos ser específicos e assumir que o cliente consumiu 7 unidades, enquanto o saldo de FREE_USAGE é 5 unidades. Das 7 unidades utilizadas, 5 unidades estão abaixo do valor limiar de 5 unidades ainda livres. Por isso, a característica USAGE_FREE_OF_CHARGE recebe o valor "5".

Das 7 unidades utilizadas 2 unidades estão acima de 5 unidades ainda livres. Por isso, a característica USAGE_TO_CHARGE recebe o valor "2".

O componente cria duas ramificações de saída, que são ambas executadas:

Exemplo de um splitter de número: as ramificações de saída.

Considere que a característica "USAGE_FREE_OF_CHARGE" só está disponível na ramificação de saída denominada "SERVICE_USAGE: até FREE_USAGE", enquanto a característica USAGE_TO_CHARGE só está disponível na ramificação denominada "SERVICE_USAGE: Beyond FREE_USAGE". Como você pode ver a lógica restante que você precisa implementar é muito mais simples desta forma, como alguns dos cálculos aritméticos foram feitos pelo componente splitter para você.

Visualização do exemplo

Nota

Dependendo dos dados fornecidos como entradas para o componente, as características de saída USAGE_FREE_OF_CHARGE e USAGE_TO_CHARGE podem ser zero.

Componentes de splitter restantes

A tabela seguinte fornece uma síntese de todos os componentes de separador restantes.

Síntese de todos os componentes splitter restantes

Componente splitterDescrição
Agregador de montantesPermite calcular a soma, o mínimo, o máximo ou o valor médio de até 20 ramificações de árvore de preço diferentes. Dessa forma, o mais barato de vários cálculos pode ser cobrado, por exemplo.
FeriadosPermite comparar um intervalo de tempo com um número arbitrário de feriados do dicionário de feriados.
Faixa de tempoPermite comparar um intervalo de tempo com um padrão de horário recorrente. O padrão pode ser diário, semanal, mensal ou anual (por exemplo, "toda semana nos fins de semana").

Operadores

Os componentes de operador não dividem o fluxo de controle. Cada componente de operador tem exatamente uma ramificação de saída.

Os gráficos mostram todos os operadores disponíveis.

Cálculo aritmético

Este componente permite efetuar cálculos aritméticos básicos. O componente suporta as seguintes operações

  • Adição
  • Subtração
  • Multiplicação
  • Setor de atividade
  • Operação de módulo
  • Operação de energia

O componente espera uma seleção de uma característica ou valor estático para o primeiro e segundo operando, a seleção de uma das operações listadas a serem executadas e o nome da característica para escrever o valor do resultado da operação.

Exemplo de uma computação aritmética.

Dependendo da operação selecionada, é necessário selecionar um modo de arredondamento. O SAP Convergent Charging suporta os seguintes modos de arredondamento:

  1. acima
  2. para baixo
  3. para o valor mais próximo

Internamente, é suportada uma precisão de até 12 decimais.

Concatenar

O operador concatenate permite combinar um número arbitrário de valores de string com uma nova propriedade de string. O elemento central de sua configuração é uma lista de elementos que compõem a nova string. Você pode adicionar quantos elementos quiser à lista.

Configurações do operador de concatenação

Os elementos de controle da tabela permitem que você adicione novos elementos, elimine elementos existentes ou modifique a sequência de elementos existentes, conforme necessário.

Por padrão, os elementos adicionados à tabela são concatenados sem nenhum caractere separador. No entanto, o componente de operador permite selecionar a partir de um conjunto predefinido de caracteres separadores e até mesmo a opção de usar um personalizado. Quando você tiver selecionado o ponto-e-vírgula como caractere separador, ele será adicionado entre os elementos a serem concatenados. Nenhum separador será colocado antes do primeiro e depois do último item.

Tabela de comutação

A tabela de comutação é um componente bastante versátil, que pode analisar uma propriedade de string ou número. Com base em um conjunto de regras, uma string de saída ou propriedade numérica é criada e fornecida com um valor. O tipo de dados da característica de saída é independente do tipo de dados da característica analisada.

Como exemplo, você pode analisar uma propriedade de string contendo um domínio de nível superior e definir um nome de país em uma segunda propriedade, dependendo do domínio de nível superior encontrado. O exemplo disso é mostrado na tabela abaixo.

No entanto, não é possível modificar a tabela que contém as regras por meio de uma API durante o tempo de execução. Isso significa que o conjunto de regras deve ser bastante estático. Para tabelas de dados dinâmicas, seria uma escolha melhor, uma vez que elas podem ser modificadas no momento da execução. As tabelas serão abordadas em uma lição posterior.

Exemplo de uma tabela de comutação.

Contador atualiz.

O componente de atualização de contador é crucial ao administrar contadores, pois permite modificar o valor do contador. Como "Nome do contador", você deve selecionar o contador para o qual deseja modificar o valor.

Exemplo de um contador de atualização.

A segunda etapa é selecionar uma das quatro operações disponíveis para executar no contador. Você pode:

  • Reinicialize o contador para seu valor inicial.
  • Defina o contador para um valor específico ou um valor lido de uma propriedade numérica.
  • Adicione um determinado valor ao contador.
  • Subtrair um determinado valor do contador.

Como valor da operação, você pode inserir um número específico, que é usado para a operação, ou fornecer uma propriedade numérica a partir da qual o sistema lerá o número.

Quando uma operação de contador é executada como parte de sua lógica de árvore de avaliação, mas a execução da lógica falha – atingindo uma função Sem acesso ou falhando de outra forma – a modificação do contador não será executada.

Operadores restantes

A tabela seguinte lista todos os componentes de operador restantes e descreve brevemente os respectivos objetivos.

Lista de todos os componentes de operador restantes

Componente de operadorDescrição
Acionamento de alertaEste componente permite acionar um alerta que é publicado pelo SAP Convergent Charging. Os aplicativos externos podem assinar esses eventos utilizando o Java API pf SAP Convergent Charging. Além disso, as notificações são fornecidas na resposta das APIs de serviços da Web SOAP da.
Emissor do evento de crédito de consumoEnvia um evento de crédito de consumo para os créditos de consumo de um contrato. Por isso, normalmente acontece a liquidação de utilização em relação a um crédito para consumo.
Introdutor de propriedade de crédito de consumoPermite processar créditos de consumo existentes para um contrato com base em determinados critérios. Este componente pode, por exemplo, contar todos os créditos para consumo de um determinado tipo válidos em uma determinada data e ter um saldo superior a X.
Criar crédito para consumoCriar um novo crédito para consumo com determinadas propriedades.
Alteração da dataAltere uma data adicionando ou subtraindo um determinado número de segundos, minutos, horas, dias, meses ou anos fornecido em uma propriedade numérica.
Contador de reduçãoFornece modificações compatíveis com a sessão de valores-contador.
DuraçãoUtiliza duas propriedades de data como entrada e calcula o número de segundos, minutos, horas ou dias entre elas.
Adaptador de duraçãoConverte um determinado número de segundos, minutos, horas ou dias em outra unidade de tempo (deve ser segundos, minutos, horas ou dias). As conversões consideram o impacto das transições entre verão / inverno.
FiltroAplica filtros a uma cadeia de valor múltiplo e atribui os valores a novas características com base no filtro correspondente à cadeia.
Operador macroChama uma macro de determinação do preço como um operador. As macros serão abordadas em uma lição posterior.
Avaliador de valor múltiploEste componente usa uma propriedade de número de valor múltiplo como entrada e calcula a soma, o mínimo, o máximo e a média de todos os valores.
Introdutor de característicaIntroduz novas propriedades de determinados tipos de dados ao contexto de avaliação e define seus valores iniciais. Você pode criar propriedades dos tipos de dados "string", "number" e "date".
Conversor de tipo de propriedadeCom este componente, você pode converter entre determinados tipos de propriedade. Com este componente, você também pode criar características de cadeia de valor múltiplo e características de número de valor múltiplo a partir de características de cadeia.
ProporcionalEste componente permite aplicar um cálculo pro rata a uma propriedade de número. A forma como o componente pro rata funciona é semelhante à forma como um cálculo pro rata é aplicado por uma taxa recorrente.
Introdutor de tabela de níveisEste componente pode ser lido a partir de um tipo de tabela obsoleto chamado "Tabela de níveis". Eles foram substituídos por tabelas de intervalos, que cobriremos em uma lição posterior.
Introdutor de tabela de conversãoEste componente pode ser lido a partir de um tipo de tabela obsoleto chamado "Tabela de conversão". Eles foram substituídos por tabelas de mapeamento, que abordaremos em uma lição posterior.

Propriedades de valor múltiplo

Até agora, você aprendeu sobre propriedades dos tipos de dados string, number e date. O SAP Convergent Charging suporta as chamadas características de valor múltiplo. Você pode imaginar que essas propriedades sejam uma lista de valores em vez de um único valor. Uma lista de valores desse tipo pode ser, por exemplo, uma lista de endereços de e-mail derivados do campo do destinatário de um e-mail.

Imagine que a propriedade de string ZZ_RECIPIENTS contém endereços de e-mail separados por ponto-e-vírgula, da mesma forma que você a encontraria no campo "Para" do seu programa de e-mail. Isso pode ter o seguinte aspecto:

ZZ_RECIPIENTS = "gary_smith@testdomain.com; finn_swann@testdomain.com; eve_steward@testdomain.com"

Uma cadeia de valor múltiplo é uma cadeia que conhece os diferentes endereços de e-mail e armazena os mesmos como valores de cadeia distintos em uma única característica. Você pode imaginar uma cadeia de valor múltiplo como uma lista de valores de cadeia:

ZZ_RECIPIENTS_MV =

gary_smith@testdomain.com
finn_swann@testdomain.com
eve_steward@testdomain.com

Quando uma cadeia contém uma sequência de valores numéricos separados por ponto-e-vírgula, você pode criar uma característica de número de valor múltiplo a partir dela. Vamos supor que existe uma propriedade ZZ_DISTANCES com um conjunto de distâncias em quilômetros entre um início e um destino para diferentes rotas:

ZZ_DISTANCES = "36; 42; 12"

Você pode criar uma característica de número de valor múltiplo a partir desta cadeia, que tem o seguinte aspecto:

ZZ_DISTANCES =

36
42
12

As propriedades de valor múltiplo sozinhas não são úteis. O valor agregado vem dos componentes, que podem trabalhar com propriedades de valor múltiplo, como você viu nas tabelas acima.

As propriedades de valor múltiplo são criadas usando o componente de operador conversor de tipo de propriedade. Como este curso não usa esses tipos de propriedades, eles não serão abordados mais detalhadamente.

Montagem de planejamentos de preços

Agora que você tem uma compreensão decente dos componentes usados para criar planejamentos de preços, vamos ver como criar um novo planejamento de preços no sistema.