Árvore de páginas


Documento de BO

Produto:

Datasul

Ocorrência:

Documentação de BO

Nome Físico

 frbo/bofr064

 

Objetivo

Validação, Manutenção e acesso rápido a tabela “mab-viagem”.

 

Funcionamento

A BO irá validar os dados, manutenir a tabela e fazer a leitura dos registros da tabela “mab-viagem”.

Na forma padrão, realiza-se a chamada através de um comando RUN.

A sintaxe para a chamada BO é:

run frbo\bofr064.p.

 

A execução na forma persistente ...

A sintaxe para executar a BO em modo persistente é:

run frbo\bofr064.p persistent set h-handle.

 

A variável denominada h-handle irá receber o “handle” do programa, permitindo o acesso aos “métodos” internos da BO.

 

Tabelas Temporárias

Nos atributos das tabelas temporárias:

Tabela Temporária

Descrição

Entrada/Saída

RowObject

Tabela de comunicação entre Interface e banco de dados da tabela “mab-viagem”.

Entrada/Saída

Atributo

Tipo

Formato

Descrição

Obrigatório

Evolução

num-viagem

int

>>>>>>>>9

Documento Viagem

Sim

 

dat-saida

Date

99/99/9999

Data da Saída do Equipamento

Sim

 

hra-saida

Char

99:99:99

Hora Saída

Sim

 

dat-ret

Date

99/99/9999

Data Retorno

 

 

hra-ret

Char

99:99:99

Hora Retorno

 

 

num-reserva

Int

>>>>>>>>9

Documento Reserva

Sim

 

hra-reserva-final

Char

99:99:99

Hora Reserva Final

sim

 

cod-rota

Char

X(12)

Código do trajeto

Sim

 

val-hodom-horim-inicial

Dec

>,>>>,>>9.9

Valor do contador Inicial

Sim

 

val-hodom-horim-final

Dec

>,>>>,>>9.9

Valor do contador final

 

 

ep-codigo

Int

>>9

Código da empresa do equipamento

Sim

 

cod-eqpto

Char

X(16)

Código do Equipamento

Sim

 

cod-matr

Char

X(10)

Código do Motorista

Sim

 

cod-usuar

Char

X(12)

Código do Usuário

 

 

dat-atualiz

Date

99/99/9999

Data da atualização

 

 

dsl-obs

Char

x(400)

Observação

 

 

val-dat-hora-invrtda-inic

Dec

999999999999

Data Hora Invertida Inicial

Sim

 

val-dat-hora-invrtda-final

Dec

999999999999

Data Hora Invertida Final

sim

 

cod-livre-1

char

X(100)

Livre 1

 

 

cod-livre-2

char

X(100)

Livre 2

 

 

log-livre-1

Log

Sim/Não

Livre 1

 

 

log-livre-2

Log

Sim/Não

Livre 2

 

 

num-livre-1

Int

->>>>>>>>>9

Livre 1

 

 

num-livre-2

Int

->>>>>>>>>9

Livre 2

 

 

val-livre-1

Dec

->>>>>>>>>>>9.9999

Livre 1

 

 

val-livre-2

Dec

->>>>>>>>>>>9.9999

Livre 2

 

 

dat-livre-1

date

99/99/9999

Livre 1

 

 

dat-livre-2

date

99/99/9999

Livre 2

 

 

ep-codigo-matr

Int

>>9

Empresa do Motorista

 

 

cod-estabel-matr

Char

x(3)

Estabelecimento do Motorista

 

 

Tabela Temporária

Descrição

Entrada/Saída

RowErrors

Contém os erros ocorridos na BO.

Saída

Atributo

Tipo

Formato

Descrição

Obrigatório

Evolução

ErrorSequence

integer

padrão

Seqüência dos erros

Sim

 

ErrorNumber

integer

padrão

Número do erro

Sim

 

ErrorDescription

char

padrão

Descrição do erro

Sim

 

ErrorParameters

char

padrão

Parâmetros passados para criar mensagem

Não

 

ErrorType

char

padrão

Tipo do erro:

WARNING: Aviso

ERROR: Erro

Sim

 

ErrorHelp

char

padrão

Texto de ajuda do erro

Sim

 

ErrorSubType

char

padrão

Sub Tipo da mensagem de erro

Não

 

  

Métodos

Quando a API/BO for executada em modo persistente, os seguintes métodos estarão disponíveis para execução:

 

 

Método Básico

goToKey

Requisito

Nenhum

Sintaxe

run goToKey in h-handle (input <integer>).

Descrição

Reposiciona o registro do tabela mab-viagem  através do número do documento viagem.

 

Parâmetros

Descrição

 

pnum-viagem

Documento viagem

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

getKey

Requisito

Nenhum

Sintaxe

run getKey in h-handle (output <integer>).

Descrição

Retorna os campos da chave primária da tabela.

 

Parâmetros

Descrição

 

pnum-viagem

Documento viagem

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

getCharField

Requisito

Nenhum

Sintaxe

run getCharField in h-handle (input  <character>,

                              output <character>).

Descrição

Retorna os valores dos campos da tabela que são caracteres.

 

Parâmetros

Descrição

 

pFieldName

Nome do campo a ser retornado

 

pFieldValue

Valor do campo.

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

getDateField

Requisito

Nenhum

Sintaxe

run getDateField in h-handle (input  <character>,

                              output <date>).

Descrição

Retorna os valores dos campos da tabela que são data.

 

Parâmetros

Descrição

 

pFieldName

Nome do campo a ser retornado

 

pFieldValue

Valor do campo.

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

getDecField

Requisito

Nenhum

Sintaxe

run getDecField in h-handle (input  <character>,

                             output <decimal>).

Descrição

Retorna os valores dos campos da tabela que são decimais.

 

Parâmetros

Descrição

 

pFieldName

Nome do campo a ser retornado

 

pFieldValue

Valor do campo.

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

getIntField

Requisito

Nenhum

Sintaxe

run getIntField in h-handle (input  <character>,

                             output <integer>).

Descrição

Retorna os valores dos campos da tabela que são inteiros.

 

Parâmetros

Descrição

 

pFieldName

Nome do campo a ser retornado

 

pFieldValue

Valor do campo.

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

getLogField

Requisito

Nenhum

Sintaxe

run getLogField in h-handle (input  <character>,

                             output <logical>).

Descrição

Retorna os valores dos campos da tabela que são Lógicos.

 

Parâmetros

Descrição

 

pFieldName

Nome do campo a ser retornado

 

pFieldValue

Valor do campo.

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

getRawField

Requisito

Nenhum

Sintaxe

run getRawField in h-handle (input  <character>,

                             output <raw>).

Descrição

Retorna os valores dos campos da tabela que são caracteres longos.

 

Parâmetros

Descrição

 

pFieldName

Nome do campo a ser retornado

 

pFieldValue

Valor do campo.

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

getRecidField

Requisito

Nenhum

Sintaxe

run getRecidField in h-handle (input  <character>,

                               output <recid>).

Descrição

Retorna os valores dos campos da tabela que são numéricos e definem uma seqüência única para a tabela dentro do database.

 

Parâmetros

Descrição

 

pFieldName

Nome do campo a ser retornado

 

pFieldValue

Valor do campo.

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

getRowid

Requisito

Nenhum

Sintaxe

run getRowid in h-handle (output <rowid>).

Descrição

Retorna o ROWID do registro corrente da Query que está aberta na BO. Este método não aparece para ser manutenido.

 

Parâmetros

Descrição

 

pRowid

Rowid da tabela.

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

 

OpenQuery / SetConstraint / LinkTo

linkToEmpEqpto

Requisito

Posicionar a query do BO de mab-eqpto no registro desejado.

Sintaxe

run linkToEmpEqpto in h-handle (input <hanlde>).

Descrição

Seta as variáveis de controle para criar o linkTo com a tabela pai “mab-eqpto” os campos ep-codigo e cod-eqpto.

 

Parâmetros

Descrição

 

pHandle

Handle BO da tabela Equipamento

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

setConstraintData

Requisito

Nenhum

Sintaxe

run setConstraintData in h-handle (input <date>,

                                   input <date>).

Descrição

Carrega as variável com a data de saída para  openQueryData.

 

Parâmetros

Descrição

 

pDataIni

Data de saída  incial

 

pDataFim

Data de saída  final

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

setConstraintEquipamento

Requisito

Nenhum

Sintaxe

run setConstraintEquipamento in h-handle (input <character>,

                                          input <character>).

Descrição

Carrega as variável com o código do equipamento inicial e final para  openQueryEquipamento.

 

Parâmetros

Descrição

 

pEqptoIni

Código do equipamento inicial

 

pEqptoFim

Código do equipamento final

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

setConstraintNrViagem

Requisito

Nenhum

Sintaxe

run setConstraintNrViagem in h-handle (input <decimal>,

                                       input <decimal>).

Descrição

Carrega as variável com o número do documento de viagem inicial e final para  openQueryNrViagem.

 

Parâmetros

Descrição

 

pViagemIni

Número do documento viagem inicial

pViagemFim

Número do documento viagem final

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

setConstraintMotorista

Requisito

Nenhum

Sintaxe

run setConstraintMotorista in h-handle (input <character>).

Descrição

Carrega a variável com o código do motorista  para  openQueryMotoEqpto.

 

Parâmetros

Descrição

 

pMoto

Código do motorista

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

setConstraintEmpEqpto

Requisito

Nenhum

Sintaxe

run setConstraintMotorista in h-handle (input <integer>,

                                        input <character>).

Descrição

Carrega as variável com o código da empresa e o código do equipamento  para  openQueryMotoEqpto.

 

Parâmetros

Descrição

 

pEmp 

Código da empresa

pEqpto

Código do equipamento

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

openQueryData

Requisito

Executar o método setConstraintData.

Sintaxe

run openQueryData in h-handle.

Descrição

Busca conjunto de registros da tabela mab-viagem  com base em uma faixa inicial e final de data de saída. Os registros são ordenados pela data de saída.

 

Parâmetros

Descrição

 

Não Contém

 

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

openQueryEquipamento

Requisito

Executar os métodos setConstraintEquipamento.

Sintaxe

run openQueryEquipamento in h-handle.

Descrição

Busca conjunto de registros da tabela mab-viagem  com base em uma faixa inicial e final da código do equipamento. Os registros são ordenados pelo campo código do equipamento.

 

Parâmetros

Descrição

 

Não Contém

 

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

openQueryEqptoData

Requisito

A setConstraintEquipamento e setConstraintData ter sido executada anteriormente.

Sintaxe

run openQueryEqptoData in h-handle.

Descrição

Busca conjunto de registros da tabela mab-viagem com base em uma faixa inicial e final da data de saída, mais os campos código da empresa e código do equipamento.

 

Parâmetros

Descrição

 

Não Contém

 

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

openQueryMotoEqpto

Requisito

A setConstraintEquipamento ou setConstraintRowEquipamento ter sido executada anteriormente.

Sintaxe

run openQueryMotoEqpto in h-handle.

Descrição

Busca conjunto de registros da tabela mab-viagem  com base em uma faixa inicial e final da data de saída, mais os campos código da empresa, código do equipamento e código do motorista. Os registros são ordenados pela data de saída.

 

Parâmetros

Descrição

 

Não Contém

 

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

openQueryMain    

Requisito

Nenhum

Sintaxe

run openQueryMain in h-handle.

Descrição

Abre a query da BO com todos os registros.

 

Parâmetros

Descrição

 

Não Contém

 

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

openQueryNrViagem

Requisito

Executar o método setConstraintNrViagem

Sintaxe

run openQueryNrViagem in h-handle.

Descrição

Busca conjunto de registros da tabela mab-viagem  com base em uma faixa inicial e final do documento viagem. Os registros são ordenados pelo documento viagem.

 

Parâmetros

Descrição

 

Não Contém

 

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

 

Método   Negócio

validateRecord

Requisito

Ter sido executada alguma ação para manutenção do registro da tabela. Esta procedure é executada somente internamente pela BO.

Sintaxe

run validate in this-procedure (input <character>).

Descrição

Valida as ações feitas em cima do registro da tabela corrente da BO. Estas ações podem ser: “CREATE”, “UPDATE” e “DELETE”.

 

Parâmetros

Descrição

 

pType

Tipo de ação:

“CREATE”

“UPDATE”

“DELETE”

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

 

buscaNrViagem

Requisito

Nenhum

Sintaxe

run buscaNrViagem in h-handle (output {&TableName}).

Descrição

Busca automática pela numeração da próxima viagem. Recebe como parâmetro para retorno o número do próximo documento viagem

 

Parâmetros

Descrição

 

pNrViagem

Número do documento viagem

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table tt-erro....

converteParaHoraInvertidaFinal

Requisito

Nenhum

Sintaxe

run converteParaHoraInvertidaFinal in h-handle (input  <character>,

                                                input  <character>,

                                                output <decimal>).

Descrição

Recebe  a data e a hora da reserva, converte e retorna no formato de data e hora invertida. Para atualizar o campo data e hora invertida final.

 

Parâmetros

Descrição

 

pData    

Data corrente do sistema

pHora    

Hora corrente do sistema

pInvertida

Data e hora invertida final

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table tt-erro....

converteParaHoraInvertidaInicial

Requisito

Nenhum

Sintaxe

run converteParaHoraInvertidaInicial in h-handle (input  <character>,

                                                  input  <character>,

                                                  output <decimal>).

Descrição

Recebe  a data e a hora da reserva, converte e retorna no formato de data e hora invertida. Para atualizar o campo data e hora invertida inicial.

 

Parâmetros

Descrição

 

pData    

Data corrente do sistema

pHora    

Hora corrente do sistema

pInvertida

Data e hora invertida inicial

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table tt-erro....

eliminaFilhos

Requisito

Quando for utilizar este método, colocá-lo em uma transação, para que se ocorrer erros, seja desfeita as eliminações.

Sintaxe

run eliminaFilhos in h-handle (input <rowid>).

Descrição

Valida e elimina a tabela de Períodos Manutenção Implementos.

 

Parâmetros

Descrição

 

pRowid

Rowid da Tabela de Implementos da Viagem

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table tt-erro....

afterCreateRecord

Requisito

Nenhum.

Descrição

Este método verifica se existe alguma reserva de equipamento para o documento da viagem corrente, se existe uma reserva selecionada verifica se existem implementos da viagem para o documento. Se encontra implementos atualiza os campos código da empresa e código do equipamento com os campos código da empresa e código do equipamento da tabela implementos da reserva. Se não existirem implementos para a viagem copia as informações do implemento da reserva para o implemento da viagem.

 

Parâmetros

Descrição

 

Não Contém

Este método é executado automaticamente, após o registro ser salvo.

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table tt-erro....

afterUpdateRecord

Requisito

Nenhum.

Descrição

Este método verifica se existe alguma reserva de equipamento para o documento da viagem corrente, se existe uma reserva selecionada verifica se existem implementos da viagem para o documento. Se encontra implementos atualiza os campos código da empresa e código do equipamento com os campos código da empresa e código do equipamento da tabela implementos da reserva. Se não existirem implementos para a viagem copia as informações do implemento da reserva para o implemento da viagem.

 

Parâmetros

Descrição

 

Não Contém

Este método é executado automaticamente, após o registro ser alterado.

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table tt-erro....

atualizaImplementos

Requisito

Nenhum.

Sintaxe

run atualizaImplementos in h-handle (input <integer>,

                                     input <integer>).

Descrição

Busca feita pelo número da reserva e viagem. Recebe como parâmetro para a atualização dos implementos.

 

Parâmetros

Descrição

 

pNrViagem

Número Viagem

pNrReserva

Número Reserva

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table tt-erro....