Documento de BO
Produto: | Datasul |
Ocorrência: | Documentação de BO |
Nome Físico | frbo/bofr022 |
Objetivo
Validação, Manutenção e acesso rápido a tabela “mab-programac-event”.
Funcionamento
A BO irá validar os dados, manutenir a tabela e fazer a leitura dos registros da tabela “mab-programac-event”.
Na forma padrão, realiza-se a chamada através de um comando RUN.
A sintaxe para a chamada BO é:
run frbo\bofr022.p.
A execução na forma persistente ...
A sintaxe para executar a BO em modo persistente é:
run frbo\bofr022.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-programac-event”. | Entrada/Saída |
Atributo | Tipo | Formato | Descrição | Obrigatório | Evolução |
ep-codigo | int | >>9 | Código da empresa do equipamento | Sim |
|
cod-eqpto | char | X(16) | Código do Equipamento | Sim |
|
cod-evento | char | x(8) | Código do Evento | Sim |
|
cod-estabel | char | x(3) | Código do estabelecimento. | Sim |
|
cod-dia-mes-vencto | char | 99/99 | Dia e Mês do Vencimento | Sim |
|
dat-inicial | date | 99/99/9999 | Data Inicial | Sim |
|
dat-final | Date | 99/99/9999 | Data de fim de validade do evento para equipamento |
|
|
num-dia | Int | >>>>> | Número de dias para antecipação dos eventos | Sim |
|
num-parcela | Int | >9 | Número de parcelas do evento | 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 |
|
|
log-parc-altern | Log | Sim/Não | Parcelas com vencimentos alternados |
|
|
num-dia-vencto | Integer | >9 | Dia Vencimento das parcelas do Evento |
|
|
log-meses-vencto | Log | Sim/Não | Meses Vencimento Parcelas |
|
|
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>, input <character>, input <character>). | |
Descrição | Reposiciona o registro do tabela mab-programac-event através do código da empresa, código do equipamento e código do evento. | |
| Parâmetros | Descrição |
| ep-codigo | Código da empresa |
| cod-eqpto | Código do equipamento |
| cod-evento | Código do evento |
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 |
| ep-codigo | Código da empresa |
| cod-eqpto | Código do equipamento |
| cod-evento | Código do evento |
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 | Posicionar a query do BO de mab-eqpto no registro desejado. | |
Sintaxe | run linkToEquipamento in h-handle (input <hanlde>). | |
Descrição | Seta as variáveis de controle para criar o linkTo com a tabela pai “mab-eqpto” contendo 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. |
setConstraintEquipamento
Requisito | Nenhum | |
Sintaxe | run setConstraintEquipamento 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 openQueryEquipamneto.
| |
| 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 <character>, input <character>). | |
Descrição | Carrega as variável com uma faixa inicial e final do código do evento para openQueryFaixa.
| |
| Parâmetros | Descrição |
| pCodEventoIni | Código do evento inicial |
| pCodEventoFim | Código do evento 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. |
openQueryMain
Requisito | Nenhum. | |
Sintaxe | run openQueryMain in h-handle. | |
Descrição | Busca conjunto de registros da tabela mab-programac-event. Os registros são ordenados pelo código da empresa, código do equipamento e código do evento. | |
| 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 o método setConstraintEquipamento . | |
Sintaxe | run openQueryEquipamento in h-handle. | |
Descrição | Busca conjunto de registros da tabela mab-programac-event com base no código da empresa e código do posto. Recebe esta variáveis atualizadas pelo método linkToEquipamento. Os registros são ordenados pelo código da empresa e o código do posto. | |
| 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 | Executar os métodos setConstraintFaixa. | |
Sintaxe | run openQueryFaixa in h-handle. | |
Descrição | Busca conjunto de registros da tabela mab-programac-event com base em uma faixa inicial e final do código do evento mais as variáveis do código da empresa e código do equipamento que este avento esta associado. Os registros são ordenados pelo campo código do evento. | |
| 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. |
consisteDataControle
Requisito | Nenhum | |
Sintaxe | run consisteDataControle in h-handle (input <integer>, input <character>, input <date>, input <character>). | |
Descrição | Recebe como parâmetro o código da empresa o código do equipamento e data inicial e final o parâmetro para identificar se é inicial ou final. Verifica se data inicial / final é menor que data de controle do equipamento da Ordem. | |
| Parâmetros | Descrição |
| pEmpresa | Código da empresa |
| pEqpto | Código do equipamento |
| pData | Data inicial |
pTipo | Parâmetro identificar se é inicial ou 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.... |
consisteDiasMes
Requisito | Nenhum | |
Sintaxe | run consisteDiasMes in h-handle (input <character>). | |
Descrição | Recebe o campo cod-dia-mes-vencto e verifica se o campo Dia/Mes está correto com calendário. | |
| Parâmetros | Descrição |
| pDiaMes | Dia e Mês do Vencimento |
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.... |
consisteEventos
Requisito | Nenhum | |
Sintaxe | run consisteEventos in h-handle (input <character>). | |
Descrição | Recebe os parâmetros data de vencimento, contador e numero de dias. Verifica se o evento programado manutenido, não contém movimentações. Cria data de vencimento e subtrai os dias de antecipação, verifica se vencimento está dentro da faixa. Em seguida verifica se número de parcelas maior que 1, percorre parcelas seguintes, guarda o dia, busca data do próximo mês. Se ocorrer erro, tenta dia anterior e verifica se vencimento está dentro da faixa. | |
| 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.... |