Árvore de páginas

Documento de BO

Produto:

Datasul

Ocorrência:

Documentação de BO

Nome Físicodibo/bodi274.p

 

RecordSet

 

Tabela principal utilizada para comunicação dos métodos da BO com o mundo externo e suas respectivas definições.

Desconto Valor

Atributo

Tipo

Formato

Descrição

Obr.

Cdn-cliente

inte 

>>>>>>>>9     

Código do Cliente

Sim

Cod-canal-venda

inte 

>>9           

Código do Canal Venda

 

Val-mercadoria-total

deci-4

>>>,>>>,>>9.999

Valor total da mercadoria a partir do qual se concede desconto

Sim

Dat-ini-validade

date 

99/99/9999    

Data de Início de Validade

Sim

Dat-fim-validade

date 

99/99/9999    

Data de fim de Validade

Sim

Val-pct-desconto-valor

deci-4

->>9.9999     

Percentual de desconto por valor do pedido

Sim

Num-transacao

inte 

>>>,>>>,>>9   

Número da transação – campo seqüencial para atender a necessidade do Oracle de ter pelo menos um índice único

Sim

Char-1

char 

x(100)

 

 

Char-2

char 

x(100)

 

 

Log-1

logi 

Sim/Não       

 

 

Log-2

logi 

Sim/Não       

 

 

Dec-1

deci-8

->>>>>>>>>>>9.9

 

 

Dec-2

deci-8

->>>>>>>>>>>9.9

 

 

Int-1

inte 

->>>>>>>>>9   

 

 

Int-2

inte 

->>>>>>>>>9   

 

 

Data-1

date 

99/99/9999    

 

 

Data-2

date 

99/99/9999     

 

 

 

Métodos Básicos

 

Métodos básicos de acesso ao banco de dados, que serão utilizados na base EMS 2.0.

 

 

Método:

Gotokey

 

Descrição:

Reposiciona o registro da tabela desconto-valor através do código do cliente (pcdn-cliente), do código do canal de venda (pcod-canal-venda), do valor da mercadoria (pval-mercadoria) e da data de início da validade (pda-ini-validade).


Requisitos: 

Nenhum 


Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

pcdn_cliente

Integer

 

X

 

 

Código Cliente

pcod-canal-venda

Integer

 

X

 

 

Código Canal Venda

pval-mercadoria

Decimal

 

 

 

 

Valor Mercadoria

pda-ini-validade

Date

 

X

 

 

Data Início Validade

 

Queries e Constraints

 

Definição das Queries (acesso ao banco de dados) e Contraints (regras de leitura)  utilizadas para buscar grupos de registros da base de dados.

 

 

Método:

openQueryByFaixa1

 

Descrição: 

Busca um conjunto de registro  da tabela desconto-valor a partir do código do cliente, código do canal de venda, do valor da mercadoria e da data de início de validade, passados como parâmetro.

 

Constraints Associados:

setConstrainByFaixa1

 

Método:

setConstrainByFaixa1

 

Descrição: 

Recebe os parâmetros da tabela desconto-valor.

 

Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

p-inicial1

char

 

X

 

 

Código Cliente

p-inicial2

char

 

X

 

 

Código Canal Venda

p-inicial3

char

 

X

 

 

Valor Mercadoria

p-inicial4

char

 

X

 

 

Data Início Validade

p-inicial5

char

 

X

 

 

Código Emitente

 

Método:

openQueryByCliente

 

Descrição: 

Busca um conjunto de registro  da tabela desconto-valor a partir do código do cliente passado como parâmetro.

 

Constraints Associados:

setConstraintByCliente

 

Método:

setConstraintByCliente

 

Descrição:

Recebe o parâmetro da tabela desconto-valor.


Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

p-cod-emit

Char

 

X

 

 

Código Emitente

 

 

Método:

 openQueryByFaixa2

 

Descrição: 

Busca um conjunto de registros da tabela desconto-valor a partir do código do canal de venda (cod-canal-venda), valor da mercadoria (val-mercadoria-total), data inicial de validade (dat-ini-validade) e código do cliente (cdn-cliente) passados como parâmetros.

 

 

Método:

openQueryByChave

 

Descrição: 

Busca um conjunto de registros da tabela desconto-valor a partir do índice (ch-codigo) passado como parâmetro.

 

Métodos Negócio

 


Métodos adicionais de atualização e acesso a base de dados.



Método: 

ValidarRegistro

 

Descrição: 

Método criado para pesquisar os registros da tabela através das chaves ch-transacao e

ch-codigo.

 


Método: 

validarCamposNaoChaveDescontoValor

 

Descrição: 

Método padrão que foi customizado para validar os campos que não fazem parte chave da tabela.

Validações:

  • Data de Início Validade, Data Fim Validade, Valor Mercadoria, Valor Percentual Desconto, Número Transação são valores obrigatórios;
  • O valor do percentual de desconto deve ser menor que 100%;
  • O valor do percentual de desconto deve ser maior que zero;
  • Moeda deve estar cadastrada no sistema.

Requisitos: 

Nenhum

 

 

Método: 

ValidateRecord

 

Descrição: 

Método padrão que foi customizado para validar as datas quando o usuário modificar um registro.

Validações:

  • A data de fim de validade deve ser maior ou igual a de início de validade.

Requisitos: 

Nenhum

 

 

Método: 

ValidarCamposDescontoValor

 

Descrição: 

Método criado para Validar os Campos Chave da Tabela desconto-valor.

Validações:

  • Informações obrigatórias: código do cliente, valor mercadoria, datas de validade e percentual de desconto. As demais informações, devem ser preenchidas com "?" ou com um valor cadastrado;
  • O cliente não pode ser exclusivamente um fornecedor (emitente.identif = 2);
  • Cliente deve estar cadastrado na tabela;
  • Canal de Venda deve estar cadastrado na tabela;
  • Valor de mercadoria deve ser maior que zero;
  • Data Final deve ser maior ou igual a Data Inicial;


Requisitos: 

Nenhum

 

 

Método: 

IncrementarSequenciaTransacao

 

Descrição:

Método implementado para incrementar a seqüência da transação. Será chamado a cada nova inclusão de um registro. Estará enviando para a interface o parâmetro nr-transacao-sequencial, que contém a última seqüência mais um.


Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

Nr-transacao-sequencial

integer

>>>,>>>,>>9

 

X

 

Número Transação Sequencial

Requisitos: Nenhum

 

 

Método: 

PesquisarMelhorDescontoValor

 

Descrição: 

Método para procurar o melhor desconto valor dentro da tabela desconto-valor. Sua chamada esta nos programas pd1509 e rotina de completa pedido dentro do pd0508.


Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

p-cdn-cliente

integer

>>>>>>>>9

X

 

 

Código Cliente

p-cod-canal-venda

integer

>>9

X

 

 

Código Canal Venda

p-val-pedido-total

deci-4

>>>,>>>,>>9.999

X

 

 

Valor total da Mercadoria

p-dat-cotacao

date

99/99/9999    

X

 

 

Data de Início de Validade

p-cod-moeda

integer

>9

X

 

 

Código Moeda

de-desconto

decimal

>>>,>>>,>>9.999

 

X

 

Valor do desconto encontrado

de-vl-convertido

decimal

>>>,>>>,>>9.999

 

X

 

Valor Total da Mercadoria Convertido

Requisitos: Nenhum