Valor de preço por obra

De GeoSales
Revisão de 16h31min de 9 de outubro de 2018 por 10.0.0.1 (discussão) (→‎GeoSales)
Ir para navegação Ir para pesquisar

Histórico de Alterações

Data Quem Comentários
10/09/2018 Ana Júlia Criação do documento
12/09/2018 Ryvane Maria Reformulação do documento
09/10/2018 Ryvane Maria Inclusão da validação de Descarga

Necessidade

Na construção da faixa de preço do produto existe uma alteração no preço de um mesmo produto, para situações diferentes. Essa diferenciação ocorre quando é selecionado o tipo de frete (CIF ou FOB ou CIF Descarga), ou quando é selecionada, além do tipo de frete, uma obra. Além disso, o preço é diferenciado também de acordo com a filial (organização de venda) selecionada.

Nesta situação, uma obra é o local onde os produtos inseridos no pedido serão utilizados, ou seja, onde é necessário que esse pedido seja entregue. As informações de obra, por sua vez, se referem ao endereço da obra em que será entregue o pedido. O tipo de frete CIF Descarga, por sua vez, define quando é necessário descarregar a carga no seu destino final.

Existem cenários distintos para composição do valor do produto. Existem alguns cenários onde o preço do produto pode ser modificado. Esses cenários envolvem parâmetros como o tipo de frete (CIF, CIF Descarga ou FOB) e a obra (caso se aplique).

Para os tipos de frete CIF, CIF Descarga ou FOB em que não é selecionado a obra, é levado em consideração um determinado valor para o produto. Quando for selecionado os tipos de frete CIF, CIF Descarga ou FOB, além de uma obra de destino, é considerado um outro valor para a faixa de preço. Ou seja, existem formas de construção de preço distintas para um mesmo produto.

Tendo em vista as situações de formação de preço distintas, é necessário associar os dados das tabelas de preço cadastradas no ERP com as informações selecionadas pelo usuário no momento do cadastro do pedido, trazendo então o valor de preço correto para cada situação descrita.

Solução

Inicialmente, para que o valor do produto seja corretamente aplicado, de acordo com o tipo de frete, a filial e a obra selecionada, os valores possíveis para um produto deverão ser trazidos do ERP para o GeoSales através da integração de dados.

A partir dos diferentes valores para um determinado produto (de acordo com o frete e a obra selecionada), será definido um valor padrão que será utilizado como base de cálculo para que sejam aplicados descontos ou acréscimos, de forma a resultar nos diferentes valores para um mesmo produto.

Por exemplo, caso seja definido que o valor padrão para o produto é o valor aplicado quando selecionado o tipo de frete CIF, sem obra. A partir do valor do produto nessa situação (frete CIF sem obra), serão aplicados descontos ou acréscimos para que esse valor alcance os valores adotados para outras situações (frete FOB sem obra, frete CIF com obra e frete FOB com obra).

Ao passo da seleção de um tipo de frete e de uma obra, no momento do cadastro do pedido, o valor padrão do produto será definido, e sob ele serão aplicados os descontos ou acréscimos necessários, de acordo com a seleção do tipo de frete e de uma obra.

Para que isso seja possível, serão definidos dois tipos de desconto, um categorizado por cliente, produto e frete, e outro categorizado por cliente, produto, frete e obra. Desta forma, a manipulação do valor padrão a ser definido resultará em todos os outros valores possíveis para um mesmo produto.

Além disso, para viabilizar essa situação, a informação de "obra" deverá ser retirada da pop-up de dados frete e inserida diretamente na tiragem do pedido.

Implementação

Desenvolvimento

- Criar o novo tipo de frete "CIF Descarga":

Para permitir que o vendedor defina se, para aquele pedido, deverá ser cobrado um valor de descarga, será criado um novo tipo de frete chamado 'CIF Descarga'. Esse tipo de frete definirá a validação de formação de preço no ERP.

- Tirar o campo de 'obra' da pop-up de dados frete:

A pop-up com as informações de dados de frete, incluindo a seleção da obra, tem finalidade exclusiva de inserir observações, por este motivo, o campo 'obra' deve ser retirado da aba de dados frete, e inserido como sendo um campo personalizado do cadastro de pedido.

Além disso deverá ser criada uma configuração ID_HABILITA_OBRA com a finalidade de exibir o campo de obra no cabeçalho do pedido, sendo este campo de preenchimento obrigatório. Esta configuração tem como valores possíveis 'S', quando habilitada, 'N', quando desabilitada, sendo seu valor default 'N'.

- Criar e popular tabelas de desconto no GeoSales:

Como proposto na solução, desconto serão aplicados para definir o preço final de um produto.

Com a finalidade de aplicar descontos ou acréscimos de forma a construir o preço final do produto, serão utilizadas duas tabelas de desconto, a tabela DESCONTO_CLIENTE_PRODUTO_FRETE será aplicada quando o usuário selecionar um frete, sendo ele CIF, CIF Descarga ou FOB, e não selecionar uma obra. Nesta tabela está parametrizado o percentual de desconto a ser aplicado por cliente, produto, filial (organização de venda) e frete.

Além disso, deverá ser criada a tabela DESCONTO_CLIENTE_PRODUTO_FRETE_OBRA (com estrutura definida na aba de "estrutura de banco"), que irá ser aplicada quando o usuário selecionar um frete, sendo ele CIF, CIF Descarga ou FOB, e uma obra. Nesta tabela está parametrizado o percentual de desconto a ser aplicado por cliente, produto, filial (organização de venda).

- Aplicar descontos e acréscimos no cadastro do pedido:

Ao passo da criação do pedido, o usuário deverá selecionar uma filial (chamada por padrão no GeoSales de organização de venda), um tipo de frete, uma obra (ou não), e iniciar a inclusão de itens selecionando um produto. A partir da seleção desses parâmetros (cliente, filial, frete, obra), é que serão definidos os descontos ou acréscimos a serem aplicados sob o valor do produto.

Será utilizado como parâmetro o valor aplicado para o produto quando o tipo de frete for CIF (sem seleção de obra). A partir desse valor, deverá ser realizado um cálculo para definir o percentual de desconto aplicado nas outras situações.

Por exemplo: O valor do produto A, quando o frete selecionado é CIF (sem obra) é de R$10,00 (dez reais), quando o frete é FOB (sem obra) é de R$12,00 (doze reais), , quando o frete é CIF (com obra) é de R$14,00 (quatorze reais) e quando o frete é FOB (com obra) é R$16,00 (dezesseis reais). O valor aplicado por padrão no item será de R$10,00 (dez reais), e será aplicado um acréscimo de 20% caso o frete seja FOB (sem obra), 40% caso o frete seja CIF (com obra), e 60% caso o frete seja FOB (com obra).

Para realizar essa conversão, e calcular o desconto ou o acréscimo a ser aplicado a fórmula abaixo deverá ser utilizada:

Aplica desconto acrescimo obra.png

O 'ValorCalculado' exibido na fórmula se trata do valor para as outras situações (Frete FOB, frete CIF com obra, frete CIF Descarga com obra, frete CIF Descarga sem obra e frete FOB com obra), e o 'ValorCIF' é o valor do produto quando o frete for CIF sem obra (que foi definido como sendo o padrão).

Caso o valor calculado resulte em um valor negativo, significa que se trata de um acréscimo no preço, caso resulte em um valor positivo, significa que se trata de um desconto no preço. (Isso ocorre porque um desconto é um diferencial/subtração, e para calcular um acréscimo teríamos que inverter a subtração -(-desconto)).

É importante salientar que o valor do produto para CIF, CIF Descarga ou FOB com obra difere de acordo com a obra selecionada, ou seja, para obras diferentes os produtos podem ter valores diferentes.

O desconto aplicado por tipo de frete quando não for selecionada uma obra será definido pela tabela DESCONTO_CLIENTE_PRODUTO_FRETE. Nesta tabela constam os parâmetros necessários para a aplicação desse desconto (cliente, organização de venda, produto, tipo de frete e percentual de desconto).

O desconto aplicado por tipo de frete quando for selecionada uma obra será definido pela tabela DESCONTO_CLIENTE_PRODUTO_FRETE_OBRA. Nesta tabela constam os parâmetros necessários para a aplicação desse desconto (cliente, organização de venda, produto, tipo de frete, obra e percentual de desconto).

Integração

- Identificando os vínculos de preço do ERP:

Caso, no cadastro do pedido, o cliente não tenha selecionado vínculo com obra, será carregado como valor do produto selecionado o preço trazido da tabela SZI, de acordo com o tipo de frete aplicado, ilustrado na tabela abaixo. Nesta tabela, SZI, são vinculadas as informações de cliente, filial, produto, valor do produto quando o frete for CIF, valor do produto quando o frete for CIF Descarga e valor do produto quando o frete for FOB.

TABELA ERP CAMPO ERP TIPO FRETE
SZI ZI_PRECO CIF
SZI ZI_PRECOF FOB
SZI ZI_PRECOD CIF Descarga

Caso o cliente possua filial e obra, ou seja, esteja na tabela CLIENTE_OBRA e tabela FRETE, o sistema deverá considerar a tabela de preço cadastrada para a obra. Nessas condições será carregado como valor do produto selecionado o preço trazido da tabela ZA2, de acordo com o tipo de frete aplicado e a obra selecionada, ilustrado na tabela abaixo. Nesta tabela, ZA2, são vinculadas as informações de cliente, filial, produto, obra, valor do produto quando o frete for CIF, valor do produto quando o frete for CIF Descarga e valor do produto quando o frete for FOB.

TABELA ERP CAMPO ERP TIPO FRETE
ZA2 ZA2_PRC01 CIF
ZA2 ZA2_PRC01F FOB
ZA2 ZA2_PRC01D CIF Descarga

- Determinando o valor do produto no GeoSales:

O valor do produto no GeoSales, por padrão, será o valor obtido quando o frete selecionado for CIF, sem obra, ou seja, o valor trazido do campo ZI_PRECO da tabela SZI. É este valor que será setado como padrão para o produto, e a partir deste valor serão definidos os descontos ou acréscimos aplicados.

Um exemplo dessa situação pode ser visualizado logo acima na aba de 'desenvolvimento'.

Os descontos ou acréscimos deverão ser salvos nas tabelas DESCONTO_CLIENTE_PRODUTO_FRETE (caso não possua vínculo com obra) e DESCONTO_CLIENTE_PRODUTO_FRETE_OBRA (caso possua vínculo com obra).

Estrutura de banco

DESCONTO_CLIENTE_PRODUTO_FRETE_OBRA
Coluna Tipo Obrigatório Chave Primária Explicação
CD_ORG_VENDA Varchar(20) Sim Sim Código da organização de venda
CD_CLIENTE Int Sim Sim Código do cliente
CD_PRODUTO Int Sim Sim Código do produto
ID_TIPO_FRETE Varchar(1) Sim Sim Tipo de frete
CD_OBRA Int Sim Sim Código da obra
PR_DESCONTO Decimal(18,6) Sim Não Percentual de desconto

Regras de Negócios

[RN1] - Caso não exista dados na tabela CLIENTE_OBRA, associando um cliente a uma obra, não será possível aplicar o valor de preço por obra para aquele cliente.

[RN2] - O desconto cadastrado na tabela DESCONTO_CLIENTE_PRODUTO_FRETE_OBRA é prioritário em relação ao desconto cadastrado na tabela DESCONTO_CLIENTE_PRODUTO_FRETE, e esses vínculos de hierarquia deverão ser incluídos na tabela de hierarquia de desconto (DESCONTO_HIERARQUIA).

[RN3] - Os dados dos descontos ou acréscimos aplicados para definir o valor final do produto deverão ser ocultos da decomposição de preço, visto que é uma tratativa do GeoSales e o usuário não irá visualizar.

[RN4] - Podem ocorrer inconsistência de casas decimais, no âmbito centesimal, nos valores dos produtos, visto que será realizado cálculo matemático para atingir o preço do produto. O GeoSales tratará a maior quantidade de casas decimais possíveis visando evitar essa situação.

[RN5] - É importante salientar que o valor do produto para CIF, CIF Descarga ou FOB com obra difere de acordo com a obra selecionada, ou seja, para obras diferentes os produtos podem ter valores diferentes.

[RN6] - Para permitir que o vendedor defina se, para aquele pedido, deverá ser cobrado um valor de descarga, será criado um novo tipo de frete chamado 'CIF Descarga'.

Regras de Integração

[RI1] - Os vínculos de preço do produto (quando não é selecionada uma obra) serão trazidos da tabela SZI do campo ZI_PRECO para frete CIF, do campo ZI_PRECOD para frete CIF Descarga e do campo ZI_PRECOF para frete FOB.

[RI2] - Os vínculos de preço do produto (quando é selecionada uma obra) serão trazidos da tabela ZI2 do campo ZA2_PRC01 para frete CIF, do campo ZA2_PRC01D para frete CIF Descarga e do campo ZA2_PRC01F para frete FOB.

Aprovação

Considero aprovada a documentação da funcionalidade especificada acima, e autorizo a implementação da mesma no Sistema GeoSales, em nome da Organização a qual estou vinculado.

GeoSales

Setor Aprovado Por Data
Integração - GeoSales Rilston Soares 09/10/2018
Desenvolvimento - GeoSales Anderson Gomes Nunes 17/09/2018

Empresa solicitante

Setor Aprovado Por Data Assinatura
Gerente TI - Cliente
Gerente de Projeto - Cliente
Gerente Comercial - Cliente