Documento de BO
Produto: | Datasul |
Ocorrência: | Documentação de BO |
Nome Físico | frbo/bofr045 |
Objetivo
Validação, Manutenção e acesso rápido a tabela “mpn-histor-vida”.
Funcionamento
A BO irá validar os dados, manutenir a tabela e fazer a leitura dos registros da tabela “mpn-histor-vida”.
Na forma padrão, realiza-se a chamada através de um comando RUN.
A sintaxe para a chamada BO é:
run frbo\bofr045.p.
A execução na forma persistente ...
A sintaxe para executar a BO em modo persistente é:
run frbo\bofr045.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 “mpn-histor-vida”. | Entrada/Saída |
Atributo | Tipo | Formato | Descrição | Obrigatório | Evolução |
cod-pneu | char | x(12) | Código do Pneu | Sim / Key | 001 |
num-vida | int | >9 | Número da Vida do Pneu | Sim / Key | 001 |
num-docto | int | >>>,>>>,>>9 | Número Documento que criou a Vida | Não | 001 |
dat-inicial | date | 99/99/9999 | Data de Início | Sim | 001 |
hra-inicial | char | 99:99:99 | Hora de Início | Sim | 001 |
val-dat-hora-invrtda | dec | 999999999999 | Data / Hora Invertida Início Vida | Sim | 001 |
dat-final | date | 99/99/9999 | Data final da Vida | Não | 001 |
val-uso-inicial | dec | >,>>>,>>9.9 | Valor Inicial da KM do Pneu | Sim | 001 |
val-uso-final | dec | >,>>>,>>9.9 | Valor Final da KM do Pneu | Não | 001 |
cod-emitente | int | >>>>>>>>9 | Código do Fornecedor | Sim | 001 |
nr-nota-fis | char | x(16) | Número Nota Fiscal | Não | 001 |
serie | char | x(5) | Série da Nota Fiscal | Não | 001 |
cod-desen | char | x(8) | Código do Desenho do Pneu | Sim | 001 |
val-sulco-inicial | dec | >>9.9 | Valor Inicial do Sulco do Pneu | Sim | 001 |
val-sulco-final | dec | >>9.9 | Valor Final do Sulco do Pneu | Não | 001 |
val-sulco-retir | dec | >>9.9 | Valor do Sulco ao ser Retirado do Equipamento | Não | 001 |
val-sulco-adc | dec | >>9.9 | Valor do Sulco Adicional (Ressulcagem) | Não | 001 |
dat-sulco-adc | date | 99/99/9999 | Data da Ressulcagem | Não | 001 |
cod-borracha | char | x(8) | Código da Borracha do Pneu | Sim | 001 |
log-km-final-confiav | log | Sim/Não | Quilometragem Final da Vida é confiável? | Sim | 001 |
val-km-hora-gartia | dec | >,>>>,>>9.9 | Quantidade de KMs de Garantia | Não | 001 |
val-mater-1 | dec | >>,>>>,>>9.99 | Valor do Pneu na moeda Padrão 0 | Não | 001 |
val-mater-2 | dec | >>,>>>,>>9.99 | Valor do Pneu na moeda Alternativa 1 | Não | 001 |
val-mater-3 | dec | >>,>>>,>>9.99 | Valor do Pneu na moeda Alternativa 2 | Não | 001 |
val-venda | Dec | >>,>>>,>>9.99 | Valor Venda | Não | 001 |
it-codigo | char | x(16) | Código do Item | Não | 007 |
cod-refer | char | x(8) | Referência Item | Não | 007 |
cod-localiz | char | x(10) | Código da Localização do Material | Não | 007 |
lote | char | x(10) | Lote ou Número de Série | Não | 007 |
cod-depos | char | x(3) | Código do Depósito | Não | 007 |
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 |
num-dias-gartia | integer | >>,>>9 | Número de dias do prazo de garantia |
|
|
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 <character>, input <integer>). | |
Descrição | Reposiciona a query com base na chave primária da tabela. | |
| Parâmetros | Descrição |
| pcod-pneu | Código do Pneu |
| pnum-vida | Número da Vida do Pneu |
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 <character>, output <integer>). | |
Descrição | Retorna os campos da chave primária da tabela. | |
| Parâmetros | Descrição |
| pcod-pneu | Código do Pneu |
| pnum-vida | Número da Vida do Pneu |
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
linkToMpn-Pneu
Requisito | Ser chamado somente quando há o Join entre a tabela em questão e a tabela mpn-pneu. | |
Sintaxe | run linkToMpn-Pneu in h-handle (input <hanlde>). | |
Descrição | Faz o JOIN entre as tabelas “mpn-pneu” e “mpn-histor-vida”. Recebe como parâmetro o handle da BO da tabela mpn-pneu, para buscar a chave primária da mesma (do registro corrente na BO), para setar as restrições “setConstraintMpn-pneu”. | |
| Parâmetros | Descrição |
| pHandle | Handle da BO “mpn-pneu” (Pneu). |
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. |
setConstraintCodPneu
Requisito | Nenhum | |
Sintaxe | run setConstraintCodPneu in h-handle (input <character>, input <character>). | |
Descrição | Seta as restrições para abrir a query para uma faixa de pneus. | |
| Parâmetros | Descrição |
| pCodPneuIni | Código do Pneu Inicial |
| pCodPneuFim | Código do Pneu 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. |
setConstraintMpn-pneu
Requisito | Nenhum | |
Sintaxe | run setConstraintMpn-pneu in h-handle (input <character>). | |
Descrição | Seta as restrições para abrir a query para um pneu. | |
| Parâmetros | Descrição |
| pCodPneu | Código do Pneu |
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. |
openQueryCodPneu
Requisito | A setConstraintCodPneu ter sido executada anteriormente. | |
Sintaxe | run openQueryCodPneu in h-handle. | |
Descrição | Abre a query da BO conforme a faixa de código do pneu passado na procedure setConstraintCodPneu. | |
| 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. |
openQueryMpn-pneu
Requisito | A setConstraintMpn-pneu ter sido executada anteriormente. | |
Sintaxe | run openQueryMpn-pneu in h-handle. | |
Descrição | Abre a query da BO conforme o código do pneu passado na procedure setConstraintMpn-pneu. | |
| 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. |
afterCreateRecord
Requisito | Procedure chamada pelo método interno CreateRecord. Não deve ser chamada externamente. | |
Sintaxe | run afterCreateRecord in this-procedure. | |
Descrição | Atualiza os campos de Valor do Sulco da tabela mpn-pneu (Pneu). | |
| 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.... |
afterUpdateRecord
Requisito | Procedure chamada pelo método interno UpdateRecord. Não deve ser chamada externamente. | |
Sintaxe | run afterUpdateRecord in this-procedure. | |
Descrição | Atualiza os campos de Valor do Sulco da tabela mpn-pneu (Pneu). | |
| 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.... |
atualizaSulco
Requisito | Nenhum | |
Sintaxe | run atualizaSulco in h-handle (input <character>, input table RowObject). | |
Descrição | Atualiza campos internos que não aparecem no cadastro do programa pai (mpn-pneu) e são atualizados na movimentação dos pneus. (Localização Atual do Pneu) Atualiza os valores dos sulcos do pneu.
| |
| Parâmetros | Descrição |
| pCodPneu | Código do Pneu |
| RowObject | Temp-Table Comunicação da tabela mpn-histor-vida (Histórico Vida Pneu) |
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.... |
beforeUpdateRecord
Requisito | Procedure chamada pelo método interno UpdateRecord. Não deve ser chamada externamente. | |
Sintaxe | run beforeUpdateRecord in this-procedure. | |
Descrição | Validação para atualizar os valores dos sulcos da tabela mpn-pneu (Pneu), se ocorreu a Ressulcagem (pn0302). | |
| 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.... |
buscaItem
Requisito | Nenhum | |
Sintaxe | run buscaItem in h-handle (input <character>, input <character>, input <integer>, output <character>). | |
Descrição | Retorna o código do item registrado no Percurso padrão por Desenho/Medida/Vida, como sugestão na inclusão do registro. | |
| Parâmetros | Descrição |
| pCodDesen | Código do Desenho |
| pCodMedid | Código da Medida |
| pNumVida | Vida |
| pItem | Código do Item |
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 valor para o return-value é OK (execução correta). O código do Item retornará em branco quando não achar nenhum Percurso que satisfaça os parâmetros. |
buscaValor
Requisito | Nenhum | |
Sintaxe | run buscaValor in h-handle (input <character>, input <character>, output <decimal>). | |
Descrição | Retorna o valor atual do item no estoque, como sugestão na inclusão do registro. | |
| Parâmetros | Descrição |
| pCodEstabel | Código do Estabelecimento |
| pItCodigo | Código do Item |
| Pvalor | Valor atual do item no estoque |
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 valor para o return-value é OK (execução correta). O valor do Item retornará zero quando não achar movimento no estoque que satisfaça os parâmetros. |