DES:Pontus

(Diferença entre revisões)
Ir para: navegação, pesquisa
(Funções com Valor Tabela)
Linha 3: Linha 3:
 
Desenvolvida por Gustavo Antonio Martini
 
Desenvolvida por Gustavo Antonio Martini
  
 +
= Funções SQL =
  
= Funções com Valor Tabela =
+
== Funções com Valor Tabela ==
  
== bilheteMesFuncionario ==
+
=== bilheteMesFuncionario ===
 
''BDPontusWEB.dbo.bilheteMesFuncionario(@pssfsc_codigo int, @mes int, @ano int)''
 
''BDPontusWEB.dbo.bilheteMesFuncionario(@pssfsc_codigo int, @mes int, @ano int)''
  
 
A função retorna uma tabela, que contém todos os dias com batidas do mês do agente, com cinco colunas, sendo, respectivamente, ''dia'', ''batidas'', ''qtsBatidas'', ''temEscala'', ''minutosDiarios''. Para poder iterar sobre o mês a função utiliza um cursor que trabalha sobre o ''select'' de batidas com dias distintos do funcionário, assim para cada dia é chamada a função ''btdDiaAjuste'' para construir as colunas ''batidas'' e ''qtsBatidas'' da linha. Além disso para cada dia é chamada a função ''tmpHrrDiario'' para a coluna ''minutosDiarios'' e a função ''exsTrnDia'' para a coluna ''temEscala''.
 
A função retorna uma tabela, que contém todos os dias com batidas do mês do agente, com cinco colunas, sendo, respectivamente, ''dia'', ''batidas'', ''qtsBatidas'', ''temEscala'', ''minutosDiarios''. Para poder iterar sobre o mês a função utiliza um cursor que trabalha sobre o ''select'' de batidas com dias distintos do funcionário, assim para cada dia é chamada a função ''btdDiaAjuste'' para construir as colunas ''batidas'' e ''qtsBatidas'' da linha. Além disso para cada dia é chamada a função ''tmpHrrDiario'' para a coluna ''minutosDiarios'' e a função ''exsTrnDia'' para a coluna ''temEscala''.
  
== btdDiaAjuste ==
+
=== btdDiaAjuste ===
 
''BDPontusWEB.dbo.btdDiaAjuste (@pssfsc_codigo int, @dia date)''
 
''BDPontusWEB.dbo.btdDiaAjuste (@pssfsc_codigo int, @dia date)''
  
 
A função organiza as batidas do funcionário, no formato ''hh:mm|...|hh:mm'', para o respectivo dia e soma a quantidade das mesmas, antes de começar a concatenar as batidas é feita uma verificação, que utiliza a função ''hrrEntSdaTrnNoturno'', para o primeiro horário do dia, checando se aquela batida é pertencente à um horário do dia anterior, a aritmética é feita a partir do horário de saída do dia anterior +-60 minutos de diferença, caso verdadeiro o cursor avança antes de inserir o horário no retorno. Além disso, é verificado se a primeira batida do próximo dia, referente à data selecionada, não faz parte do horário, a aritmética utilizada é a mesma para exclusão da primeira batida.
 
A função organiza as batidas do funcionário, no formato ''hh:mm|...|hh:mm'', para o respectivo dia e soma a quantidade das mesmas, antes de começar a concatenar as batidas é feita uma verificação, que utiliza a função ''hrrEntSdaTrnNoturno'', para o primeiro horário do dia, checando se aquela batida é pertencente à um horário do dia anterior, a aritmética é feita a partir do horário de saída do dia anterior +-60 minutos de diferença, caso verdadeiro o cursor avança antes de inserir o horário no retorno. Além disso, é verificado se a primeira batida do próximo dia, referente à data selecionada, não faz parte do horário, a aritmética utilizada é a mesma para exclusão da primeira batida.
  
== EscFncSetorPorSemana ==
+
=== EscFncSetorPorSemana ===
 
''BDPontusWEB.dbo.EscFncSetorPorSemana (@pssfsc_codigo int, @dia date)''
 
''BDPontusWEB.dbo.EscFncSetorPorSemana (@pssfsc_codigo int, @dia date)''
  
Linha 22: Linha 23:
  
  
== hrrEntSaida ==
+
=== hrrEntSaida ===
 
''BDPontusWEB.dbo.hrrEntSaida (@pssfsc_codigo int, @dia date)''
 
''BDPontusWEB.dbo.hrrEntSaida (@pssfsc_codigo int, @dia date)''
  
  
== hrrEntSdaTrnNoturno ==
+
=== hrrEntSdaTrnNoturno ===
 
''BDPontusWEB.dbo.hrrEntSdaTrnNoturno  (@pssfsc_codigo int, @dia date)''
 
''BDPontusWEB.dbo.hrrEntSdaTrnNoturno  (@pssfsc_codigo int, @dia date)''
  
  
== psqEscFuncionarioPorSemana ==
+
=== psqEscFuncionarioPorSemana ===
 
''BDPontusWEB.dbo.psqEscFuncionarioPorSemana (@pssfsc_codigo int, @dia date)''
 
''BDPontusWEB.dbo.psqEscFuncionarioPorSemana (@pssfsc_codigo int, @dia date)''
  
= Funções com Valor Escalar =
+
== Funções com Valor Escalar ==
  
== exsTrnDia ==
+
=== exsTrnDia ===
 
''BDPontusWEB.dbo.exsTrnDia (@pssfsc_codigo int, @dia date)''
 
''BDPontusWEB.dbo.exsTrnDia (@pssfsc_codigo int, @dia date)''
  
 
A função verifica nas tabelas de ''FncHRRTrbDiario'' e ''FncEscTrabalho'' se o funcionário tem horário de trabalho no dia enviado para a função. Retorna 'S' para dia com trabalho e 'N' para um dia em que não há escala.
 
A função verifica nas tabelas de ''FncHRRTrbDiario'' e ''FncEscTrabalho'' se o funcionário tem horário de trabalho no dia enviado para a função. Retorna 'S' para dia com trabalho e 'N' para um dia em que não há escala.
  
== hrrDiaFuncionario ==
+
=== hrrDiaFuncionario ===
 
''BDPontusWEB.dbo.hrrDiaFuncionario(@pssfsc_codigo int, @dia date, @cdgUnidade int)''
 
''BDPontusWEB.dbo.hrrDiaFuncionario(@pssfsc_codigo int, @dia date, @cdgUnidade int)''
  
 
A função retorna a String com os horários de entrada e saída do funcionário, o código de unidade é um parâmetro pois está função é utilizada como apoio para a função ''psqEscFuncionarioPorsemana'', em que já se cálcula o código de unidade, quando o funcionário tem mais que um turno no dia a String é concatenada e separada por quebras de linha (char 10) no SQL. Além disso, são demarcados os horários extras do agente universitário com o caractere ''E'' no final da linha, caso o funcionário não tenha nenhum horário no dia o retorno é um ponto ('' . '').
 
A função retorna a String com os horários de entrada e saída do funcionário, o código de unidade é um parâmetro pois está função é utilizada como apoio para a função ''psqEscFuncionarioPorsemana'', em que já se cálcula o código de unidade, quando o funcionário tem mais que um turno no dia a String é concatenada e separada por quebras de linha (char 10) no SQL. Além disso, são demarcados os horários extras do agente universitário com o caractere ''E'' no final da linha, caso o funcionário não tenha nenhum horário no dia o retorno é um ponto ('' . '').
  
== tmpHrrDiario ==
+
=== tmpHrrDiario ===
 
''BDPontusWEB.dbo.tmpHrrDiario(@pssfsc_codigo int, @dia date)''
 
''BDPontusWEB.dbo.tmpHrrDiario(@pssfsc_codigo int, @dia date)''
  
Linha 51: Linha 52:
  
  
== vrfUnidade ==
+
=== vrfUnidade ===
 
''BDPontusWEB.dbo.vrfUnidade(@pssfsc_codigo int)''
 
''BDPontusWEB.dbo.vrfUnidade(@pssfsc_codigo int)''
  
 
A função retorna um inteiro que é referente a qual banco de dados o funcionário esta integrado. Necessária para as seleções em locais que a consulta pode gerar duplicidade de resultados quando existirem chaves primárias iguais entre bancos. Além disso, é considerado as cedências para outros setores da pessoa física, nesse caso a pessoa está, provavelmente, presente em mais de um banco.
 
A função retorna um inteiro que é referente a qual banco de dados o funcionário esta integrado. Necessária para as seleções em locais que a consulta pode gerar duplicidade de resultados quando existirem chaves primárias iguais entre bancos. Além disso, é considerado as cedências para outros setores da pessoa física, nesse caso a pessoa está, provavelmente, presente em mais de um banco.

Edição de 10h46min de 5 de dezembro de 2023

Lançamento da nova versão em Extjs e VRaptor: 16/11/2023

Desenvolvida por Gustavo Antonio Martini

Tabela de conteúdo

Funções SQL

Funções com Valor Tabela

bilheteMesFuncionario

BDPontusWEB.dbo.bilheteMesFuncionario(@pssfsc_codigo int, @mes int, @ano int)

A função retorna uma tabela, que contém todos os dias com batidas do mês do agente, com cinco colunas, sendo, respectivamente, dia, batidas, qtsBatidas, temEscala, minutosDiarios. Para poder iterar sobre o mês a função utiliza um cursor que trabalha sobre o select de batidas com dias distintos do funcionário, assim para cada dia é chamada a função btdDiaAjuste para construir as colunas batidas e qtsBatidas da linha. Além disso para cada dia é chamada a função tmpHrrDiario para a coluna minutosDiarios e a função exsTrnDia para a coluna temEscala.

btdDiaAjuste

BDPontusWEB.dbo.btdDiaAjuste (@pssfsc_codigo int, @dia date)

A função organiza as batidas do funcionário, no formato hh:mm|...|hh:mm, para o respectivo dia e soma a quantidade das mesmas, antes de começar a concatenar as batidas é feita uma verificação, que utiliza a função hrrEntSdaTrnNoturno, para o primeiro horário do dia, checando se aquela batida é pertencente à um horário do dia anterior, a aritmética é feita a partir do horário de saída do dia anterior +-60 minutos de diferença, caso verdadeiro o cursor avança antes de inserir o horário no retorno. Além disso, é verificado se a primeira batida do próximo dia, referente à data selecionada, não faz parte do horário, a aritmética utilizada é a mesma para exclusão da primeira batida.

EscFncSetorPorSemana

BDPontusWEB.dbo.EscFncSetorPorSemana (@pssfsc_codigo int, @dia date)



hrrEntSaida

BDPontusWEB.dbo.hrrEntSaida (@pssfsc_codigo int, @dia date)


hrrEntSdaTrnNoturno

BDPontusWEB.dbo.hrrEntSdaTrnNoturno (@pssfsc_codigo int, @dia date)


psqEscFuncionarioPorSemana

BDPontusWEB.dbo.psqEscFuncionarioPorSemana (@pssfsc_codigo int, @dia date)

Funções com Valor Escalar

exsTrnDia

BDPontusWEB.dbo.exsTrnDia (@pssfsc_codigo int, @dia date)

A função verifica nas tabelas de FncHRRTrbDiario e FncEscTrabalho se o funcionário tem horário de trabalho no dia enviado para a função. Retorna 'S' para dia com trabalho e 'N' para um dia em que não há escala.

hrrDiaFuncionario

BDPontusWEB.dbo.hrrDiaFuncionario(@pssfsc_codigo int, @dia date, @cdgUnidade int)

A função retorna a String com os horários de entrada e saída do funcionário, o código de unidade é um parâmetro pois está função é utilizada como apoio para a função psqEscFuncionarioPorsemana, em que já se cálcula o código de unidade, quando o funcionário tem mais que um turno no dia a String é concatenada e separada por quebras de linha (char 10) no SQL. Além disso, são demarcados os horários extras do agente universitário com o caractere E no final da linha, caso o funcionário não tenha nenhum horário no dia o retorno é um ponto ( . ).

tmpHrrDiario

BDPontusWEB.dbo.tmpHrrDiario(@pssfsc_codigo int, @dia date)

A função cálcula quantos minutos o funcionário deve executar no dia, retorna o valor inteiro dos minutos designados para trabalho na respectiva data.


vrfUnidade

BDPontusWEB.dbo.vrfUnidade(@pssfsc_codigo int)

A função retorna um inteiro que é referente a qual banco de dados o funcionário esta integrado. Necessária para as seleções em locais que a consulta pode gerar duplicidade de resultados quando existirem chaves primárias iguais entre bancos. Além disso, é considerado as cedências para outros setores da pessoa física, nesse caso a pessoa está, provavelmente, presente em mais de um banco.

Ferramentas pessoais
Espaços nominais
Variantes
Ações
Navegação
Ferramentas