Documento de BO
Produto: | Datasul |
Ocorrência: | Documentação de BO |
Nome Físico | frbo/bofr004 |
Objetivo
Validação, Manutenção e acesso rápido a tabela “mab-comptmento-eqpto”.
Funcionamento
A BO irá validar os dados, manutenir a tabela e fazer a leitura dos registros da tabela “mab-comptmento-eqpto”.
Na forma padrão, realiza-se a chamada através de um comando RUN.
A sintaxe para a chamada BO é:
run frbo\bofr004.p.
A execução na forma persistente ...
A sintaxe para executar a BO em modo persistente é:
run frbo\bofr004.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-comptmento-eqpto”. | 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 |
cod-comptmento | char | x(8) | Código Compartimento | Sim / Key | 001 |
cod-tip-mater | char | x(8) | Código Tipo Material | Sim | 001 |
qtd-capac | dec | >>>>9.99 | Capacidade Compartimento | Sim | 001 |
val-km-inicial | dec | >>,>>>,>>9.9 | Uso Inicial | Não | 001 |
idi-remonta | int | 9 | Remonta 1 = Normal 2 = Anormal | Sim | 001 |
cod-sub-sist | char | x(8) | Código Sub Sistema | Sim | 001 |
val-perc-remon | dec | >>9.99 | % Remonta | Sim | 001 |
cod-livre-1 | char | x(100) | Character Livre | Não | 001 |
cod-livre-2 | char | x(100) | 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 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>, input <character>, 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 |
| pcod-comptmento | Código do Compartimento |
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 <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 |
| pcod-comptmento | Código do Compartimento |
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-comptmento-eqpto”. 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. |
setConstraintCompartimento
Requisito | Nenhum | |
Sintaxe | run setConstraintCompartimento in h-handle (input <character>, input <character>). | |
Descrição | Seta as restrições para abrir a query por faixa de código do compartimento. | |
| Parâmetros | Descrição |
| pCompIni | Código Compartimento Inicial |
| pCompFim | Código Compartimento 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 <integer>, input <character>). | |
Descrição | Seta as restrições para abrir a query por equipamento. | |
| 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. |
setConstraintMotor
Requisito | Nenhum | |
Sintaxe | run setConstraintMotor in h-handle (input <logical>). | |
Descrição | Seta as restrições para compartimentos que sejam do motor. | |
| Parâmetros | Descrição |
| pMotor | Compartimento do Motor? |
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. |
setConstraintRowEquipamento
Requisito | Nenhum | |
Sintaxe | run setConstraintRowEquipamento in h-handle (input <rowid>). | |
Descrição | Seta as restrições para um equipamento, buscando a chave primária através do Rowid recebido como parâmetro. | |
| Parâmetros | Descrição |
| pRow | Rowid da tabela “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. |
openQueryCompartimento
Requisito | A setConstraintCompartimento ter sido executada anteriormente. | |
Sintaxe | run openQueryCompartimento in h-handle. | |
Descrição | Abre a query da BO conforme a faixa de Código do Compartimento passada na procedure setConstraintCompartimento. | |
| 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. |
openQueryCompartimentoEqpto
Requisito | A setConstraintCompartimento e a setConstraintEquipamento ou setConstraintRowEquipamento terem sido executadas anteriormente. | |
Sintaxe | run openQueryCompartimentoEqpto in h-handle. | |
Descrição | Abre a query da BO conforme a faixa de Código do Compartimento passada na procedure setConstraintCompartimento e conforme o equipamento setado em umas das procedures setConstraintEquipamento ou setConstraintRowEquipamento. | |
| 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 | A setConstraintEquipamento ou setConstraintRowEquipamento ter sido executada anteriormente. | |
Sintaxe | run openQueryEquipamento in h-handle. | |
Descrição | Abre a query da BO conforme o equipamento setado em umas das procedures setConstraintEquipamento ou setConstraintRowEquipamento. | |
| 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. |
openQueryMotor
Requisito | A setConstraintMotor ter sido executada anteriormente. | |
Sintaxe | run openQueryMotor in h-handle. | |
Descrição | Abre a query da BO com todos os registros de compartimentos cujo compartimento seja parte do motor. | |
| 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. |
buscaCamposCompartimento
Requisito | Nenhum | |
Sintaxe | run buscaCamposCompartimento in h-handle (input <character>, output <integer>, output <logical>). | |
Descrição | Busca os dados do compartimento passado para validações. | |
| Parâmetros | Descrição |
| pComp | Código do Compartimento |
| pTipo | Tipo de Compartimento 1 = Óleo 2 = Filtro |
| pMotor | Compartimento do Motor? |
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 | Nenhum | |
Sintaxe | run eliminaFilhos in h-handle (input <rowid>). | |
Descrição | Elimina a tabela de Períodos de Manutenção do Compartimento (mab-period-manut). | |
| Parâmetros | Descrição |
| pRowid | Rowid da tabela de Compartimentos 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.... |