Árvore de páginas

Documento de BO

Produto:

Datasul

Ocorrência:

Documentação de BO

Nome Físico

boCrmOcor.p

 

RowObject 

Temp-Table principal usada para utilização dos métodos da BO e suas respectivas definições.

RowObject

Atributo

Tipo

Formato

Descrição

Obr.

num_id

int

99999999

Código identificador seqüencial

Sim 

dat_abert

Date

99/99/9999

Abertura

Sim

num_id_usuar_abert

int

>>>>,>>9

Usuario de Abertura

Sim

dat_fechto

Date

99/99/9999

Data Fechamento

Não

num_id_usr_fechto

Int

>>>>,>>9

Usuário Fechamento

Não

num_id_pessoa

Int

>>>>,>>9

Pessoa

Sim

num_id_contat

Int

>>>>,>>9

Contato

Não

num_id_tip_ocor

Int

>>>>,>>9

Tipo Ocorrência

Sim

num_id_priorid_ocor

Int

>>>>,>>9

Prioridade Ocorrência

Sim

num_id_orig

Int

>>>>,>>9

Origem

Sim

num_id_vers

Int

>>>9

Versão

Não

dsl_sit

Char

x(5000)

Situação

Sim

dsl_soluc

Char

x(2000)

Solução

Não

num_id_recur

Int

>>>>,>>9

Id Recurso

Sim

num_id_status_ocor

Int

>>>>,>>9

Id Status Ocorrência

Sim

dat_prev_fechto

Date

99/99/9999

Previsao Fechamento

Sim

hra_prev_fechto

Char

99:99:99

Previsao Fechamento

Sim

num_id_ocor_orig

Int

>>>>,>>9

Ocorrência Origem

Não

num_id_ocor_fluxo

Int

>>>>,>>9

Id Fluxo Ocorrência

Sim

nom_ocor

Char

x(60)

Ocorrências

Sim

num_id_template

Int

9

Template

Não

num_id_classif_ocor_item

Int

>>>>,>>9

Item Classificação

Não

num_id_refer

Int

>>>>,>>9

Referência

Não

num_id_produt_filho

Int

>>>>,>>9

Componente

Não

Dat_timestamp

Date

99/99/9999

Data de Alteração do Registro

Sim

Cdd_version

Dec

>>>,>>>,>>>,>>9

Versão

Não

Num_livre_1

Int

>>>>>9

Livre 1

Não

Val_livre_1

Dec

Zzz,zzz,zz9.9999

Livre 1

Não

Val_livre_2

Dec

Zzz,zzz,zz9.9999

Livre 2

Não

Num_livre_2

Int

>>>>>9

Livre 2

Não

Cod_livre_1

Char

X(100)

Livre 1

Não

Cod_livre_2

Char

X(100)

Livre 2

Não

Dat_livre_1

Date

99/99/9999

Livre 1

Não

Dat_livre_2

Date

99/99/9999

Livre 2

Não

Log_livre_1

Log

Sim/Não

Livre 1

Não

Log_livre_2

Log

Sim/Não

Livre 2

Não

 

Método Básico

Métodos básicos de acesso ao banco de dados.

getCharField

Requisito

Nenhum

Descrição

Retorna o valor de um campo character.

Parâmetro

Tipo

Formato

I

O

IO

Descrição

pFieldName

char

 

X

 

 

Nome Campo

pFieldValue

char

 

 

X

 

Valor Campo

getDateField

Requisito

Nenhum

Descrição

Retorna o valor de um campo date.

Parâmetro

Tipo

Formato

I

O

IO

Descrição

pFieldName

char

 

X

 

 

Nome Campo

pFieldValue

char

 

 

X

 

Valor Campo

getDecField

Requisito

Nenhum

Descrição

Retorna o valor de um campo decimal.

Parâmetro

Tipo

Formato

I

O

IO

Descrição

pFieldName

char

 

X

 

 

Nome Campo

pFieldValue

char

 

 

X

 

Valor Campo

getIntField

Requisito

Nenhum

Descrição

Retorna o valor de um campo inteiro.

Parâmetro

Tipo

Formato

I

O

IO

Descrição

pFieldName

char

 

X

 

 

Nome Campo

pFieldValue

char

 

 

X

 

Valor Campo

getKey

Requisito

Nenhum

Descrição

Retorna valores dos campos do índice CODIGO

Parâmetro

Tipo

Formato

I

O

IO

Descrição

pit-codigo

char

 

 

X

 

Item

psequencia

int

 

 

X

 

Sequência

pes-codigo

char

 

 

X

 

Componente

pordem

int

 

 

X

 

Ordem

pal-codigo

char

 

 

X

 

Componente Alternativo

getLogField

Requisito

Nenhum

Descrição

Retorna o valor de um campo logical.

Parâmetro

Tipo

Formato

I

O

IO

Descrição

pFieldName

char

 

X

 

 

Nome Campo

pFieldValue

char

 

 

X

 

Valor Campo

getRawField

Requisito

Nenhum

Descrição

Retorna valor de campos do tipo raw.

Parâmetro

Tipo

Formato

I

O

IO

Descrição

pFieldName

char

 

X

 

 

Nome Campo

 

pFieldValue

raw

 

 

X

 

Valor Campo

getRecidField

Requisito

Nenhum

Descrição

Retorna valor de campos do tipo recid.

Parâmetro

Tipo

Formato

I

O

IO

Descrição

pFieldName

char

 

X

 

 

Nome Campo

pFieldValue

recid

 

 

X

 

Valor Campo

goToKey

Requisito

Nenhum

Descrição

Reposiciona registro com base no índice CODIGO

Parâmetro

Tipo

Formato

I

O

IO

Descrição

pit-codigo

char

 

X

 

 

Item

psequencia

int

 

X

 

 

Sequência

pes-codigo

char

 

X

 

 

Componente

pordem

int

 

X

 

 

Ordem

pal-codigo

char

 

X

 

 

Componente Alternativo

validateRecord

Requisito

Nenhum

Descrição

Validações pertinentes ao DBO para as operações de Create, Update e Delete.

Caso opção seja igual “Inserir ou Alterar”, irá chamar o seguinte método

validateDate          

persistSLA

Valida se a previsão de fechamento está preenchida e deixa o campo em branco.

Valida se o campo num_id_template é diferente de zero e atribui a zero.

Atribui o usuário logado ao campo num_id_usar_abert. E se o log_template do registro inserido for igual a true,atualiza para false.

Caso opção seja igual “Deletar”, irá chamas o seguinte método

checkDeleteOcor

Parâmetro

Tipo

Formato

I

O

IO

Descrição

pType

char

 

X

 

 

Recebe o tipo de validação

 

Método Negócio

Métodos adicionais de atualização e acesso a base de dados .

 

Método: validateDate

Descrição: Verifica se no status do fluxo existe algum recurso com o nível selecionado, caso não tenha recurso especialista verifica se tem recurso no status. Quando o status não possui recurso informado, são apresentados todos os recursos que estão relacionados ao fluxo

Requisitos: Nenhum

Parâmetros: Nenhum

 

Método: loadResources

Descrição: Verifica se no status do fluxo existe algum recurso com o nível selecionado. Caso não tenha recurso especialista verifica se tem recurso no status. Quando o status não possui recurso informado, são apresentados todos os recursos que estão relacionados ao fluxo.

Requisitos: Nenhum 

Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

numIdClassif

Int

 

X

 

 

Classificação

numIdPrioridOco

Int

 

X

 

 

Prioridade Ocorrência

numIdOcorFluxo

Int

 

X

 

 

Fluxo da ocorrência

hasHier

Log

 

 

X

 

Hierarquia

userHasAccess

Log

 

 

X

 

Usuário da Hierarquia

ttResources

 

 

 

X

 

 

numIdStatusOcor

Int

 

X

 

 

Status da Ocorrência

 

Método: loadVersionComponentReferenceByClassification

Descrição: Chamará os seguinte métodos

 loadVersionByClassification (INPUT idClassif, OUTPUT TABLE ttVersions).

 loadComponentByClassification (INPUT idClassif, OUTPUT TABLE ttComponents).

 loadReferenceByClassification (INPUT idClassif, OUTPUT TABLE ttReferences).        

Requisitos: Nenhum

Parâmetros: 

Parâmetro

Tipo

Formato

I

O

IO

Descrição

idClassif

Int

 

X

 

 

Classificação

ttVersions

 

 

 

X

 

 

ttComponents

 

 

 

X

 

 

ttReferences

 

 

 

X

 

 

 

Método: loadVersionByClassification

Descrição: Faz uma busca nas tabelas crm_classif_ocor_item e na crm_produt_supor_vers e cria uma temp-table que recebe como numId o crm_produt_supor_vers.num_id_vers.

Requisitos: Nenhum

Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

idClassif

Int

 

X

 

 

Classificação

ttVersions

 

 

 

X

 

 

 

Método: loadComponentByClassification

Descrição: Faz uma busca nas tabelas crm_classif_ocor_item e cria uma temp-table que recebe como numId o crm_produt_compon.num_id_produt_filho.

Requisitos: Nenhum

Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

idClassif

Int

 

X

 

 

Classificação

ttReferences

 

 

 

X

 

Hierarquia

 

Método: loadReferenceByClassification

Descrição: Faz uma busca nas tabelas crm_classif_ocor_item e cria uma temp-table que recebe como numId o crm_produt_refer.num_id_refer.

Requisitos: Nenhum

Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

idClassif

Int

 

X

 

 

Classificação

ttReferences

 

 

 

X

 

Hierarquia

 

Método: forecastClosing

Descrição: Se a prioridade for maior que zero, faz uma busca na tabela crm_priorid_ocor_niv_recur onde crm_priorid_ocor_niv_recur.num_id_priorid_ocor = idPriorid e atribui responseTime = crm_priorid_ocor_niv_recur.val_respos senão somente atribui responseTime = crm_priorid_ocor_niv_recur.val_respos.

Requisitos: Nenhum

Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

idResource

Int

 

X

 

 

Classificação

idPriorid

Int

 

X

 

 

Classificação

previsao

 

 

 

X

 

Hierarquia

hraPrevista

 

 

 

X

 

Hierarquia

 

Método: statusEndsOccurrence

Descrição: Faz uma busca em Fluxo de Ocorrência do Status e atribui a variável ends  o valor de crm_ocor_fluxo_status.log_encerra_ocor.  

Requisitos: Nenhum

Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

idStatus

Int

 

X

 

 

Classificação

idFlow

Int

 

X

 

 

Classificação

ends

 

 

 

X

 

Hierarquia

 

Método: reOpenOccurrence

Descrição: Faz uma busca em Ocorrencia com o mesmo id de idOcor e atribui crm_ocor.num_id_status_ocor    = idStatus

crm_ocor.num_id_recur = idResource.  

Requisitos: Nenhum

Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

idOcor

Int

 

X

 

 

Classificação

idResource

Int

 

X

 

 

Classificação

idStatus

 

 

X

 

 

Hierarquia

 

Método: validateReOpenOccurrence

Descrição: Chama o método canUpdate (INPUT idOcor, OUTPUT canReOpen, OUTPUT onlyResp).

Faz uma busca em Fluxo do Status da Ocorrencia com o mesmo id de idOcor e atribui idStartFlow = crm_ocor_fluxo_status.num_id

Requisitos: Nenhum

Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

idOcor

Int

 

X

 

 

Classificação

idResource

Int

 

X

 

 

Classificação

canReOpen

Log

 

 

X

 

Hierarquia

onlyResp

log

 

 

X

 

 

idStartFlow

Int

 

 

X

 

 

validReturn

Char

 

 

X

 

 

 

Método: validateActionRequired

Descrição: Faz uma busca em Tipo de Ocorrência e atribui requiredAction = crm_tip_ocor.log_reg_acao

Requisitos: Nenhum

Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

idOccurrenceType

Int

 

X

 

 

Classificação

requiredAction

Int

 

X

 

 

Classificação

 

Método: sendEmail

Descrição: Faz uma busca em Fluxo da Ocorrência e atribui sendEmail = TRUE

Requisitos: Nenhum

Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

idFlow

Int

 

X

 

 

Classificação

idResource

Int

 

X

 

 

Classificação

 

Método: loadStatusOccurrence

Descrição: Faz uma busca em Fluxo da Ocorrência e atribui hasDesvio = TRUE

Faz uma busca Status do Fluxo da Ocorrência e cria a temp-table com o campo numId com valor igual a crm_ocor_fluxo_status.num_id senão adiciona o fluxo atual para que na tela de ocorrência possa deixar o campo habilitado.

Requisitos: Nenhum

Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

idStatus

Int

 

X

 

 

Classificação

idFlow

Int

 

X

 

 

Classificação

ttAvailableStatus

 

 

 

X

 

 

 

Método: checkFlowOccurrence

Descrição: Valida os fluxos que atendam as exigências.

Caso não possua fluxos que atendam as exigências, o sistema deve retornar os fluxos que não possuam regras relacionadas

Requisitos: Nenhum

Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

idType

Int

 

X

 

 

Classificação

idPriority

Int

 

X

 

 

Classificação

idVersion

Int

 

X

 

 

 

idOrigin

Int

 

X

 

 

 

ttAvailableFlows

 

 

 

X

 

 

 

Método: canDuplicate

Descrição: Valida se o recurso possui o campo log_duplic_ocor true,para que possa ser duplicado.

Requisitos: Nenhum

Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

idRecur

Int

 

X

 

 

Classificação

hasAccess

Log

 

 

X

 

 


Método: updateStatusOcore

Descrição: Valida a campanha, ação, resultado, se esses campos forem igual aos seus respectivos na tabela crm_ocor_fluxo_status_regra e crm_histor_acao, atribui                     crm_ocor. num_id_status_ocor =                                                     crm_ocor_fluxo_status_regra. num_id_ocor_fluxo_status_dest.

Requisitos: Nenhum

Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

idAcao

Int

 

X

 

 

Ação

 

Método: canUpdate

Descrição: Verfica se o usuário logado tem permissão para alterar a ocorrência.

Requisitos: Nenhum

Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

idRecur

Int

 

X

 

 

Recurso

idOcor

Int

 

X

 

 

Ocorrência

canUpdate

Log

 

 

X

 

Pode alterar

onlyResp

Log

 

 

X

 

Resposta

 

Método: getCoAccountByCoOccurrence

Descrição: Se o id da ocorrência for igual ao parâmetro de entrada coOccurrence,o parâmetro de saída é igual ao campo crm_ocor.num_id_pessoa.

Requisitos: Nenhum

Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

coOccurrence

Int

 

X

 

 

Recurso

coAccount

Int

 

 

X

 

Ocorrência

 

Método: checkDeleteOcor

Descrição: Deleta registros em cascata - tabela relacionamento sintomas.    

Deleta registros em cascata - tabela relacionamento palavra chave

Requisitos: Nenhum

Parâmetros: Nenhum

 

Método: datePreviouse

Descrição: Se a data selecionada for menor que a atual, a previsão recebe true.

Requisitos: Nenhum

Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

dateFechto

char

 

X

 

 

Data Fechamento

previous

Log

 

 

X

 

Previsão

 

Método: persistSLA

Descrição: Procura se já existe um registro com o mesmo id,e se o status da ocorrência é diferente. Busca o último crm_ocor_niv_service e atribui crm_ocor_niv_service.dat_fim = dtAtual e crm_ocor_niv_service.hra_fim = hrAtual. E chama o seguinte método, calculateSLATime (INPUT crm_ocor_niv_service.dat_inic,INPUT crm_ocor_niv_service.hra_inic, INPUT crm_ocor_niv_service.dat_fim,     INPUT  crm_ocor_niv_service.hra_fim ,INPUT crm_ocor.num_id_ocor_fluxo,       OUTPUT slaTime).

Requisitos: Nenhum

Parâmetros: Nenhum

 

Método: calculateSLATime

Descrição: Caso a ocorrência ainda esteja aberta o último status ou status atual, não tem data de término. Verifica se as datas de início e término estão dentro do período noturno. Se o intervalo for composto por apenas um dia considera a data inicial e final do registro. Se o intervalo for composto por mais um dia considera a data inicial do registro e final do turno. Calcula o período do primeiro dia com a hora inicial do turno e à hora de término.

Requisitos: Nenhum

Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

datInic

date

 

X

 

 

Data Inicial

hraInic

Char

 

X

 

 

Hora Inicial

datFim

Date

 

X

 

 

Data Final

hraFIm

Char

 

X

 

 

Hora Final

numIdFlow

Int

 

X

 

 

Id

slaTime

Int

 

 

X

 

Tempo Sla

 

Método: validateEndSLTATime

Descrição: Verifica se a data de fim está dentro do horário de término do turno. Caso à hora não esteja dentro do período de início, deve considerar o início do turno.

Requisitos: Nenhum

Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

hraEnd

Int

 

X

 

 

Hora Final

hraEndTUrn

Int

 

X

 

 

Hora Turno Final

minEnd

Int

 

X

 

 

Minuto Final

minEndTurn

Int

 

X

 

 

Minuto Turno Final

newHrs

Int

 

 

X

 

Nova Hora

newMin

Int

 

 

X

 

Novo Minuto

 

Método: validateIniSLTATime

Descrição: Verifica se a data de inicio está  dentro do horário de inicio do turno. Caso a hora não esteja dentro do período de inicio, deve considerar o inicio do turno

Requisitos: Nenhum 

Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

hraIni

Int

 

X

 

 

Hora Inicial

hraIniTUrn

Int

 

X

 

 

Hora Turno Inicial

minIni

Int

 

X

 

 

Minuto Inicial

minIniTurn

Int

 

X

 

 

Minuto Turno Inicial

newHrs

Int

 

 

X

 

Nova Hora

newMin

Int

 

 

X

 

Novo Minuto

 

Método: generateOrdemOcorrence

Descrição: Gera uma sequência.

Requisitos: Nenhum 

Parâmetros:

Parâmetro

Tipo

Formato

I

O

IO

Descrição

i-sequencia

Int

 

 

X

 

Sequência