Documento de BO
Produto: | Datasul |
Ocorrência: | Documentação de BO |
Nome Físico | frbo/bofr014 |
Objetivo
Validação, Manutenção e acesso rápido a tabela “mab-histor-combust”.
Funcionamento
A BO irá validar os dados, manutenir a tabela e fazer a leitura dos registros da tabela “mab-histor-combust”.
Na forma padrão, realiza-se a chamada através de um comando RUN.
A sintaxe para a chamada BO é:
run frbo\bofr014.p.
A execução na forma persistente ...
A sintaxe para executar a BO em modo persistente é:
run frbo\bofr014.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-histor-combust”. | Entrada/Saída |
Atributo | Tipo | Formato | Descrição | Obrigatório | Evolução |
ep-codigo | int | >>9 | Empresa Equipamento | Sim / Key | 001 |
cod-eqpto | char | x(16) | Código Equipamento | Sim / Key | 001 |
dat-inicial | date | 99/99/9999 | Data Inicial | Sim / Key | 001 |
cod-tip-mater | char | x(8) | Código do Tipo de Material | Sim / Key | 001 |
val-capac-tanque | dec | >>>>9.9 | Capacidade Tanque Combustível | Não | 001 |
idi-tip-consu | int | 9 | Tipo de Consumo Combustível 1 = Sem Consumo 2 = Percurso/Qtd 3 = Qtd/Percurso | Sim | 001 |
val-consu-padr | dec | >>>>>9.99 | Consumo Padrão Combustível | Sim | 001 |
dat-desativ | date | 99/99/9999 | Data de Desativação | Não | 001 |
cod-livre-1 | char | x(1000) | Character Livre | Não | 001 |
cod-livre-2 | char | x(1000) | Character Livre | Não | 001 |
log-livre-1 | log | Sim/Não | Logical Livre | Não | 001 |
log-livre-2 | log | Sim/Não | Logical Livre | Não | 001 |
num-livre-1 | int | ->>>>>>>>>9 | Inteiro Livre | Não | 001 |
num-livre-2 | int | ->>>>>>>>>9 | Inteiro Livre | Não | 001 |
val-livre-1 | dec | ->>>>>>>>>>>9.9 | Decimal Livre | Não | 001 |
val-livre-2 | dec | ->>>>>>>>>>>9.9 | Decimal Livre | Não | 001 |
dat-livre-1 | date | 99/99/9999 | Data livre | Não | 001 |
dat-livre-2 | date | 99/99/9999 | Data livre | Não | 001 |
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 | 001 |
ErrorNumber | integer | padrão | Número do erro | Sim | 001 |
ErrorDescription | char | padrão | Descrição do erro | Sim | 001 |
ErrorParameters | char | padrão | Parâmetros passados para criar mensagem | Não | 001 |
ErrorType | char | padrão | Tipo do erro: WARNING: Aviso ERROR: Erro | Sim | 001 |
ErrorHelp | char | padrão | Texto de ajuda do erro | Sim | 001 |
ErrorSubType | char | padrão | Sub Tipo da mensagem de erro | Não | 001 |
Métodos
Quando a 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>, input <character>, input <date>, input <character>). | ||
Descrição | Reposiciona a query com base na chave primária da tabela. | ||
| Parâmetros | Descrição | |
| pep-codigo | Código da Empresa | |
| pcod-eqpto | Código do Equipamento | |
| pdat-inicial | Data Inicial | |
| pcod-tip-mater | Código do Tipo de Material | |
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>, output <character>, output <date>, output <character>). | ||
Descrição | Retorna os campos da chave primária da tabela. | ||
| Parâmetros | Descrição | |
| pep-codigo | Código da Empresa | |
| pcod-eqpto | Código do Equipamento | |
| pdat-inicial | Data Inicial | |
| pcod-tip-mater | Código do Tipo de Material | |
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
linkToEquipamento
Requisito | Ser chamado somente quando há o Join entre a tabela em questão e a tabela mab-eqpto. | |
Sintaxe | run linkToEquipamento in h-handle (input <hanlde>). | |
Descrição | Faz o JOIN entre as tabelas “mab-eqpto” e “mab-histor-combust”. Recebe como parâmetro o handle da BO da tabela mab-eqpto, para buscar a chave primária da mesma (do registro corrente na BO), para setar as restrições “setConstraintEquipamento”. | |
| Parâmetros | Descrição |
| pHandle | Handle da BO “mab-eqpto” (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. |
setConstraintEquipamento
Requisito | Nenhum | |
Sintaxe | run setConstraintEquipamento in h-handle (input <integer>, input <character>). | |
Descrição | Seta as restrições para abrir a query para o equipamento passado como parâmetro. | |
| Parâmetros | Descrição |
| pCdnEmpresa | Código da Empresa |
| pCodEqpto | 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. |
setConstraintFaixa
Requisito | Nenhum | |
Sintaxe | run setConstraintFaixa in h-handle (input <date>, input <date>). | |
Descrição | Seta as restrições para abrir a query por faixa de data inicial. | |
| Parâmetros | Descrição |
| pDataIni | Data Inicial |
| pDataFim | Data 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. |
setConstraintFaixaEquipamento
Requisito | Nenhum | |
Sintaxe | run setConstraintFaixaEquipamento in h-handle (input <integer>, input <integer>, input <character>, input <character>). | |
Descrição | Seta as restrições para abrir a query por faixa de equipamento. | |
| Parâmetros | Descrição |
| pCdnEmpresaIni | Código Empresa Inicial |
| pCdnEmpresaFim | Código Empresa Final |
| pCodEqptoIni | Código Equipamento Inicial |
| pCodEqptoFim | Código 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. |
openQueryEquipamento
Requisito | A setConstraintEquipamento ter sido executada anteriormente. | |
Sintaxe | run openQueryEquipamento in h-handle. | |
Descrição | Abre a query da BO conforme o equipamento setado na procedure setConstraintEquipamento. | |
| 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. |
openQueryFaixa
Requisito | A setConstraintFaixa e a setConstraintEquipamento terem sido executadas anteriormente. | |
Sintaxe | run openQueryFaixa in h-handle. | |
Descrição | Abre a query da BO conforme a faixa de Datas do Cadastro passada na procedure setConstraintFaixa para o equipamento passado na procedure setConstraintEquipamento. | |
| 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. |
openQueryFaixaEquipamento
Requisito | A setConstraintFaixaEquipamento ter sido executada anteriormente. | |
Sintaxe | run openQueryFaixaEquipamento in h-handle. | |
Descrição | Abre a query da BO conforme a faixa de Equipamento passada na procedure setConstraintFaixa. | |
| 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. |
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. |
buscaDataInicio
Requisito | Nenhum | |
Sintaxe | run buscaDataInicio in h-handle (input <integer>, input <character>, output <date>). | |
Descrição | Busca a data de início do controle do equipamento. | |
| Parâmetros | Descrição |
| pEmpresa | Código da Empresa |
| pEqpto | Código do Equipamento |
| pData | Data de Início de Controle |
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.... |
buscaDescricaoConsumo
Requisito | Nenhum | |
Sintaxe | run buscaDescricaoConsumo in h-handle (input <character>, input <character>, input <integer>, output <character>). | |
Descrição | Cria a descrição do Consumo conforme o tipo de consumo passado. 2 = Percurso/Qtd 3 = Qtd/Percurso
Busca a unidade de medida do Modelo e a unidade de medida do tipo de material. | |
| Parâmetros | Descrição |
| pModelo | Código do Modelo do Equipamento |
| pMaterial | Código do Tipo de Material |
| pTipo | Tipo de Consumo |
| pDesc | Descrição do Consumo |
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.... |
buscaDescricaoConsumoSec
Requisito | Nenhum | |
Sintaxe | run buscaDescricaoConsumoSec in h-handle (input <character>, input <character>, input <integer>, output <character>). | |
Descrição | Cria a descrição do Consumo Secundário conforme o tipo de consumo passado. 2 = Percurso/Qtd 3 = Qtd/Percurso
Busca a unidade de medida do Modelo e a unidade de medida do tipo de material. | |
| Parâmetros | Descrição |
| pModelo | Código do Modelo do Equipamento |
| pMaterial | Código do Tipo de Material |
| pTipo | Tipo de Consumo |
| pDesc | Descrição do Consumo |
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.... |
buscaHistorico
Requisito | Nenhum | |
Sintaxe | run buscaHistorico in h-handle (input <integer>, input <character>). | |
Descrição | Verifica se existe algum Histórico de Consumo de Combustível ativo para o equipamento passado como parâmetro. Se existir, retorna o Status “NOK”. | |
| Parâmetros | Descrição |
| iEmpresa | Código da Empresa |
| cEqpto | 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 tt-erro.... |
createRecordOver
Requisito | Método chamado pelo método interno CreateRecord. Não deve ser chamado externamente. | |
Sintaxe | run createRecordOver in this-procedure. | |
Descrição | Método de sobreposição do método padrão createRecord. Neste método foi incluído o código para desativar o histórico anterior de consumo, caso o que esteja sendo incluído seja um histórico de consumo. | |
| 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 tt-erro.... |