Documento de BO
Produto: | Datasul |
Ocorrência: | Documentação de BO |
Nome Físico | frbo/bofr134 |
Objetivo
Validação, Manutenção e acesso rápido a tabela “mab-unid-negoc-om”.
Funcionamento
A BO irá validar os dados, manutenir a tabela e fazer a leitura dos registros da tabela “mab-unid-negoc-om”.
Na forma padrão, realiza-se a chamada através de um comando RUN.
A sintaxe para a chamada BO é:
run frbo\bofr134.p.
A execução na forma persistente.
A sintaxe para executar a BO em modo persistente é:
run frbo\bofr134.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-unid-negoc-om”. | Entrada/Saída |
Atributo | Tipo | Formato | Descrição | Obrigatório | Evolução |
nr-ord-produ | int | >>>.>>>.>>9 | Número da OM | Sim | 001 |
cod-unid-negoc | char | x(3) | Código da Unidade de Negócio | Sim | 001 |
val-perc-unid-negoc | dec | ->>>>>>>>>>>9.9 | Percentual da Unidade de Negócio | 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 |
Tabela Temporária | Descrição | Entrada/Saída |
tt-erro-2 | Contém os erros encontrados na validação de Restrição de Unidade de Negócio | Saída |
Atributo | Tipo | Formato | Descrição | Obrigatório | Evolução |
i-sequen | integer | padrão | Seqüência dos erros | Sim | 001 |
cd-erro | integer | padrão | Código do erro | Sim | 001 |
mensagem | char | padrão | Descrição do erro | Sim | 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
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. |
getKey
Requisito | Nenhum | |
Sintaxe | run getKey in h-handle (output <integer>, output <character>). | |
Descrição | Retorna os campos da chave primária da tabela. | |
| Parâmetros | Descrição |
| pnr-ord-produ | Numero da Ordem de Manutenção Mecânica. |
| pcod-unid-negoc | Código da Unidade de Negócio. |
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. |
goToKey
Requisito | Nenhum | |
Sintaxe | run goToKey in h-handle (input <integer>, input <character>). | |
Descrição | Reposiciona a query com base na chave primária da tabela. | |
| Parâmetros | Descrição |
| pnr-ord-produ | Numero da Ordem de Manutenção Mecânica. |
| pcod-unid-negoc | Código da Unidade de Negócio. |
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
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
canFindMatrizMMV
Requisito | A BO deve estar rodando persistente na variável h-handle. | |
Sintaxe | run canFindMatrizMMV in h-handle (input <integer>). | |
Descrição | Verifica se existe Matriz de Unidade de Negócio para a Ordem de Manutenção passada como parâmetro. | |
| Parâmetros | Descrição |
| pnr-ord-produ | Número da Ordem de Manutenção Mecânica. |
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. |
criattMatrizUnidNegoc
Requisito | A BO deve estar rodando persistente na variável h-handle. | |
Sintaxe | run criattMatrizUnidNegoc in h-handle (input <integer>, output <temp-table>). | |
Descrição | Verifica se existe Matriz de Unidade de Negócio para a Ordem de Manutenção passada como parâmetro e retorna uma temp-table com todas as Unidades existente para mesma. | |
| Parâmetros | Descrição |
| pnr-ord-produ | Número da Ordem de Manutenção Mecânica |
| tt-matriz-om | Temp-table de Matriz de Unidade de Negócio. Ob.: Segue o comando para definição da temp-table: {mnbo/bomn250.i tt-matriz-om} |
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. |
criattUnidNegocOM
Requisito | A BO deve estar rodando persistente na variável h-handle. | |
Sintaxe | run criattUnidNegocOM in h-handle (input <integer>, output <temp-table>). | |
Descrição | Verifica se existe Matriz de Unidade de Negócio para a Ordem de Manutenção passada como parâmetro e retorna uma temp-table com todas as Unidades existente para mesma. | |
| Parâmetros | Descrição |
| pnr-ord-produ | Número da Ordem de Manutenção Mecânica |
| tt-mmv-unid-negoc-om | Temp-table de Matriz de Unidade de Negócio. Ob.: Segue o comando para definição da temp-table: {frbo/bofr134.i tt-mmv-unid-negoc-om} |
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. |
deletaMatrizUnidNegoc
Requisito | A BO deve estar rodando persistente na variável h-handle. | |
Sintaxe | run deletaMatrizUnidNegoc in h-handle (input <integer>). | |
Descrição | Elimina a Matriz de Unidade de Negócio existente para a Ordem de Manutenção Mecânica passada como parâmetro. | |
| Parâmetros | Descrição |
| p-nr-ord-produ | Número da Ordem de Manutenção Mecânica. |
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. |
sugeriMatrizUnidNegoc
Requisito | A BO deve estar rodando persistente na variável h-handle. | |
Sintaxe | run sugeriMatrizUnidNegoc in h-handle (input <integer>, input <integer>, input <character>, output <temp-table>). | |
Descrição | Sugeri a Matriz de Unidade de Negócio da Ordem de Manutenção Mecânica com base na Matriz existente para o Equipamento. | |
| Parâmetros | Descrição |
| pnr-ord-produ | Número da Ordem de Manutenção Mecânica. |
| pep-codigo | Código da Empresa. |
| pcod-eqpto | Código do Equipamento. |
| tt-mmv-unid-negoc-om | Temp-table de Matriz de Unidade de Negócio. Ob.: Segue o comando para definição da temp-table: {frbo/bofr134.i tt-mmv-unid-negoc-om} |
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. |
validaPercentual
Requisito | A BO deve estar rodando persistente na variável h-handle. | |
Sintaxe | run validaPercentual in h-handle (input <temp-table>, output <logical>). | |
Descrição | Recebe como temp-table as Unidade de Negócio de uma Matriz e retorna “YES” se o somatório de seus percentuais seja “100”, caso contrario retorna “NO”. | |
| Parâmetros | Descrição |
| tt-mmv-unid-negoc-om | Temp-table de Matriz de Unidade de Negócio. Ob.: Segue o comando para definição da temp-table: {frbo/bofr134.i tt-mmv-unid-negoc-om} |
| p-erro | Retorna “YES” se o somatório de seus percentuais seja “100”, caso contrário retorna “NO”. |
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. |
validaRestricoesUnidadeNegocio
Requisito | A BO deve estar rodando persistente na variável h-handle. | |
Sintaxe | run validaRestricoesUnidadeNegocio in h-handle (input <integer>, input <date>, outpu <temp-table>). | |
Descrição | Realiza a validação de unidade de negócio existente na cdapi024 para a Unidade de Negócio e Matriz existente na Ordem de Manutenção Mecânica. | |
| Parâmetros | Descrição |
| p-nr-ord-produ | Número da Ordem de Manutenção Mecânica. |
| p-dt-trans | Data de Transação. |
| tt-erro-2 | Retorna os erros encontrados na validação. |
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. |
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. |