Predefinição:AcademusCalouros sp: mudanças entre as edições

De Wiki Unioeste NTI
Ir para navegaçãoIr para pesquisar
 
(14 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 5: Linha 5:
=== Tabelas a serem gravadas/modificadas ===  
=== Tabelas a serem gravadas/modificadas ===  


ClrMatricula, AcdMatricula, AcdSituacao, AcdStcAtual, AcdDdsVestibular, Academico, Rlc_PssFisca_Vinculo, AcdCurso
* INSERT/UPDATE: ClrMatricula, AcdDdsVestibular.
* UPDATE: AcdMatricula, AcdStcAtual.
* INSERT: AcdSituacao, Rlc_Pssfisica_Vinculo, AcdCurso, AcdSituacao, AcdStcAtual, AcdMatricula.


=== Parâmetros ===
=== Parâmetros ===
Linha 15: Linha 17:
** @prmInscrClr_Codigo VARCHAR(100) - Número de inscrição do calouro no Processo Seletivo (SGPS). Ex: ''364322''
** @prmInscrClr_Codigo VARCHAR(100) - Número de inscrição do calouro no Processo Seletivo (SGPS). Ex: ''364322''
** @prmPrdLtv_Ingresso INT - Código do Período Letivo da Matrícula. (Ex: ''20251'')
** @prmPrdLtv_Ingresso INT - Código do Período Letivo da Matrícula. (Ex: ''20251'')
** @prmTblGrlItm_Codigo VARCHAR(20) - Forma de Ingresso do Calouro. (Ex: ''AprPrn, Dpl, ENEM'')
** @prmTblGrlItm_Codigo VARCHAR(20) - Forma de Ingresso do Calouro. (Ex: ''Vst, AprPrn, Dpl, ENEM'')
** @prmClrMtrPssFsc_IncCodigo INT - Código da pessoa física do ''USUÁRIO'' que está realizando a inclusão.
** @prmClrMtrPssFsc_IncCodigo INT - Código da pessoa física do ''USUÁRIO'' que está realizando a inclusão.


Linha 32: Linha 34:
* O [Curso Externo Equivalente] deve estar vinculado ao curso pelo [Cadastro de Cursos] no Academus;
* O [Curso Externo Equivalente] deve estar vinculado ao curso pelo [Cadastro de Cursos] no Academus;


* [Grade Curricular cadastrada no Academus] - É realizado uma equivalência entre o código do curso do Processo Seletivo (SGPS) informado via parâmetro @prmCrsChm_Codigo para o curso do sistema Academus, na sequência é verificando a existência da grade curricular no Academus e utilizada para realizar a matricula do calouro nas disciplinas.
* [Grade Curricular cadastrada no Academus] - A procedure realiza uma equivalência do código do curso do Processo Seletivo (SGPS), informado pelo parâmetro @prmCrsChm_Codigo, com o curso correspondente no Cadastro de Cursos do Academus. Na sequência, ela verifica e utiliza a grade curricular existente no sistema para matricular o calouro nas disciplinas.


* O calouro deve estar no cadastro de Pessoa Física, item validado pelo CPF;
* O calouro deve estar no cadastro de Pessoa Física, item validado pelo CPF;


* O calouro deve ter seu endereço cadastrado;
* O calouro deve ter o endereço cadastrado;


* Para cursos EAD, devem ser informado o [Polo Equivalente] no Academus ;
* Para cursos EAD, devem ser informado o [Polo Equivalente] no Academus ;
Linha 47: Linha 49:


=== Retorno ===
=== Retorno ===
Esta procedure retorna registros sobre a sua execução, incluindo mensagens de log e divergências.


* '''Tp_Registro''' - O tipo de registro. Possíveis valores: 'ERRO', 'INFO', 'DIVERGÊNCIA'.
* Caso de Sucesso
* '''Sst_Sgps'''
:: Em uma execução bem-sucedida, a procedure não retorna dados. Ela apenas fornece uma consulta SELECT vazia para garantir a compatibilidade com sistemas como o Delphi.
* '''Sst_Academus'''
 
* '''Vst_Codigo'''
* Caso de Logs e Erros
* '''PrdLtv_Grupo'''
:: Esta procedure retorna registros sobre sua execução em uma tabela temporária, incluindo mensagens de log e divergências. Campos de destaque:
* '''Crs_Codigo'''
 
* '''Observacoes'''
::: * '''Tp_Registro''' (VARCHAR): O tipo de registro. Os valores possíveis são 'ERRO', 'INFO' e 'DIVERGÊNCIA'.
::: * '''Observacoes''' (NVARCHAR): A descrição detalhada da mensagem ou divergência.
 
{| class="wikitable"
|+ Exemplo de Retorno
|-
! Tp_Registro !! Sst_Sgps !! Sst_Academus !! Vst_Codigo !! PrdLtv_Grupo !! Crs_Codigo !! Observacoes
|-
| DIVERGÊNCIA || NULL || NULL || 20251 || 2025 || Csc0050 || Município de Procedência não cadastrado para o acadêmico
|}


== Stored Procedure: [BDAcademicoProducao].[dbo].[spClrIngExclui] ==
== Stored Procedure: [BDAcademicoProducao].[dbo].[spClrIngExclui] ==
Linha 89: Linha 99:


=== Dependências ===
=== Dependências ===
[BDAcademicoProducao].[dbo].[spClrIngDfzMatricula] @prmPssFsc_CdgAcademico, @prmAcdCrs_SqnFormacao


'''[BDAcademicoProducao].[dbo].[spClrIngDfzMatricula] @prmPssFsc_CdgAcademico, @prmAcdCrs_SqnFormacao'''
* Chamada exclusivamente pela '''[spClrIngExclui]''';
* Realiza a exclusão lógica de todos os registros do calouro.


=== Requisitos ===
=== Requisitos ===


* O calouro deve estar inscrito no Processo Seletivo informado via parâmetro @prmPrcSlt_Codigo;  
* O calouro deve estar inscrito no Processo Seletivo informado via parâmetro @prmPrcSlt_Codigo;  
* O calouro deve ter alguma matrícula confirmada no Academus;
* O calouro deve ter alguma matrícula confirmada no Academus.
* Não podem existir Frequências lançadas para o calouro;
 
=== Divergências ===


=== Stored Procedure Auxiliares ===
=== Stored Procedure Auxiliares ===
Linha 104: Linha 113:
* [BDAcademicoProducao].[dbo].[fnClrIngVrfTmFrqENota](@prmPssFsc_CdgAcademico Int, @prmAcdCrs_SqnFormacao Int).
* [BDAcademicoProducao].[dbo].[fnClrIngVrfTmFrqENota](@prmPssFsc_CdgAcademico Int, @prmAcdCrs_SqnFormacao Int).
** Realiza a verificação de nota e frequência do acadêmico caso existam registros retorna 1 (TRUE), se não retorna 0 (FALSE).
** Realiza a verificação de nota e frequência do acadêmico caso existam registros retorna 1 (TRUE), se não retorna 0 (FALSE).
=== Retorno ===
* Em Caso de Sucesso
** Em uma execução bem-sucedida, a stored procedure não retorna dados, mas uma consulta SELECT vazia, o que garante a compatibilidade com sistemas como o Delphi.
* Em Caso de Erro
** Em situações de erro, a procedure retorna uma tabela de logs no seguinte formato:
*** Tp_Registro (VARCHAR): O tipo de registro. O valor retornado é 'ERRO'.
*** Observacoes (NVARCHAR): A descrição detalhada do erro.
{| class="wikitable"
|+ Exemplo de retorno de Erro pela Stored Procedure
|-
! Tp_Registro !! Observacoes
|-
| ERRO|| Não encontrado cadastro para inscrição informada:
|-
|}
== Stored Procedure: [BDAcademicoProducao].[dbo].[spClrIngEnsala] ==
A rotina realiza o ensalamento dos calouros nas ofertas disponíveis, conforme as disciplinas cadastradas na tabela AcdMatricula.
=== Tabelas a serem gravadas/modificadas ===
INSERT: AcdMtrEnsalamento
=== Parâmetros ===
* @prmPssFsc_CdgAcademico INT - Código da pessoa física do Calouro;
* @prmAcdCrs_SqnFormacao INT - Código de Sequência de Formação do Academus;
* @prmVrfChoqueHorario CHAR(1) - Parâmetro booleano para verificar choque de horário das disciplinas, utilize 'T' (True) para realizar a verificação e 'F' (False) para não verificar;
* @prmDtEnsalamento DATE - Data da realização do ensalamento.
=== Requisitos ===
* Acadêmico deve estar matriculado nas disciplinas para realizar o ensalamento.
=== Retorno ===
* Caso de Sucesso
:: Caso o ensalamento seja concluído com sucesso para todas as ofertas disponíveis, a procedure não retorna dados, mas sim uma consulta SELECT vazia para garantir a compatibilidade com o Delphi.
* Caso de Impedimento
:: Se a procedure identificar impedimentos para o ensalamento, ela retorna um SELECT contendo os motivos (exemplo: Oferta 1: Sem vaga).
{| class="wikitable"
|+ Exemplo de retorno Ensalamento
|-
! PssFsc_CdgAcademico !! AcdCrs_SqnFormacao !! PssFsc_Nome !! AcdMtr_SqnMatricula !! PrdLtv_PrdLetivo !! Crs_Codigo !! TrmCbc_Serie !! Dsc_Codigo !! TrmCbc_Sequencia !! Trm_Codigo !! AcdMtrEns_DtaEnsalamento !! AcdMtrEns_EnsTroca !! AcdCurso !! CrsNome !! AtlSerie !! AcdCodigo !! AcdNome !! SequenciaFormacao !! MtrPrdLetivo !! MtrCurso !! MtrSerie !! MtrCdgDisciplina !! MtrNomeDisciplina !! TrmPrdLetivo !! TrmCurso !! TrmSerie !! TrmCdgDisciplina !! TrmTurma !! TrmSqnCabecalho !! EnsOK !! Observacao
|-
| 419184 || 1 || M || 1 || 20252 || CSC0067 || 1 || Csc1284 || 1 || || 2025-07-28 00:00:00.000 || F || CSC0067 || Fisioterapia || 1 || 419184 || M || 1 || 20252 || CSC0067 || 1 || Csc1284 || Imunologia || || || || || || N || Turma cheia
|-
| 419184 || 1 || M || 4 || 20251 || CSC0067 || 1 || Csc3491 || 1 || || 2025-07-28 00:00:00.000 || F || CSC0067 || Fisioterapia || 1 || 419184 || M || 1 || 20251 || CSC0067 || 1 || Csc3491 || Bioquímica || || || || || || N || Turma cheia
|}

Edição atual tal como às 13h32min de 1 de setembro de 2025

Stored Procedure: [BDAcademicoProducao].[dbo].[spClrIngGera]

Realiza a matrícula do calouro no curso selecionado. O estudante é então vinculado e seu status atual é definido como cursando. As informações cadastrais são inseridas e a matrícula é associada as disciplinas da grade curricular vigente.

Tabelas a serem gravadas/modificadas

  • INSERT/UPDATE: ClrMatricula, AcdDdsVestibular.
  • UPDATE: AcdMatricula, AcdStcAtual.
  • INSERT: AcdSituacao, Rlc_Pssfisica_Vinculo, AcdCurso, AcdSituacao, AcdStcAtual, AcdMatricula.

Parâmetros

  • Obrigatórios:
    • @prmPrcSlt_Codigo INT - Código do Processo Seletivo (Academus). Ex: 20251 - Concurso Vestibular 2025.
    • @prmChm_Codigo INT - Código da Sequência da Chamada do Processo Seletivo (Academus). Ex: 1 - Edital 005 2025 Convocação 1...
    • @prmCrsChm_Codigo INT - Código do Curso da Chamada (SGPS). Ex: 19324 - Ciências da Computação/Integral
    • @prmInscrClr_Codigo VARCHAR(100) - Número de inscrição do calouro no Processo Seletivo (SGPS). Ex: 364322
    • @prmPrdLtv_Ingresso INT - Código do Período Letivo da Matrícula. (Ex: 20251)
    • @prmTblGrlItm_Codigo VARCHAR(20) - Forma de Ingresso do Calouro. (Ex: Vst, AprPrn, Dpl, ENEM)
    • @prmClrMtrPssFsc_IncCodigo INT - Código da pessoa física do USUÁRIO que está realizando a inclusão.
  • Opcional:
    • @prmDtMatricula DATE - Data da realização da matrícula. Se não for informada, a função GETDATE() do banco de dados é utilizada.

Dependências

[BDAcademicoProducao].[dbo].[fnClrIngVrfExiste]

  • Verifica se já existe registro de ingresso para o acadêmico.
  • Utilizado para ter o consentimento e informar o usuário que na execução da Stored Procedure [spClrIngGera], para os acadêmicos com registro de ingresso para o Processo Seletivo informado (@prmPrcSlt_Codigo) com a situação diferente de CURSANDO, será inserida nova situação atual igual a CURSANDO e, se houver matrículas canceladas, elas serão ativadas.

Requisitos

  • O calouro deve estar inscrito no Processo Seletivo informado via parâmetro @prmPrcSlt_Codigo;
  • O [Curso Externo Equivalente] deve estar vinculado ao curso pelo [Cadastro de Cursos] no Academus;
  • [Grade Curricular cadastrada no Academus] - A procedure realiza uma equivalência do código do curso do Processo Seletivo (SGPS), informado pelo parâmetro @prmCrsChm_Codigo, com o curso correspondente no Cadastro de Cursos do Academus. Na sequência, ela verifica e utiliza a grade curricular existente no sistema para matricular o calouro nas disciplinas.
  • O calouro deve estar no cadastro de Pessoa Física, item validado pelo CPF;
  • O calouro deve ter o endereço cadastrado;
  • Para cursos EAD, devem ser informado o [Polo Equivalente] no Academus ;

Divergências

Essas mensagens não interrompem a execução da Stored Procedure, mas servem como avisos informativos para alertar sobre a necessidade de ajustes em dados divergentes, como:

  • Divergência entre o nome do calouro do Processo seletivo (SGPS) e o [Cadastro de Pessoa Física];
  • Divergência entre o nome da Mãe do Processo seletivo (SGPS) e o [Cadastro de Pessoa Física];
  • Município de procedência não cadastrado para o calouro;

Retorno

  • Caso de Sucesso
Em uma execução bem-sucedida, a procedure não retorna dados. Ela apenas fornece uma consulta SELECT vazia para garantir a compatibilidade com sistemas como o Delphi.
  • Caso de Logs e Erros
Esta procedure retorna registros sobre sua execução em uma tabela temporária, incluindo mensagens de log e divergências. Campos de destaque:
* Tp_Registro (VARCHAR): O tipo de registro. Os valores possíveis são 'ERRO', 'INFO' e 'DIVERGÊNCIA'.
* Observacoes (NVARCHAR): A descrição detalhada da mensagem ou divergência.
Exemplo de Retorno
Tp_Registro Sst_Sgps Sst_Academus Vst_Codigo PrdLtv_Grupo Crs_Codigo Observacoes
DIVERGÊNCIA NULL NULL 20251 2025 Csc0050 Município de Procedência não cadastrado para o acadêmico

Stored Procedure: [BDAcademicoProducao].[dbo].[spClrIngExclui]

Realiza a exclusão ou cancelamento da matrícula do calouro conforme parâmetro informado @prmCdgClrMtrSituacao.

  • Para situação [ 3 - Excluir ], caso existem Frequências e/ou Notas lançadas para o calouro, a [ spClrIngExclui ] será finalizada. Nesses casos só poderá ser alterado a situação para CANCELADA (Unioeste ou pelo acadêmico). Para outra situação, primeiro o docente deverá remover os lançamentos já efetuados.
  • Para situações [ 2 - Cancelamento pela Unioeste ] ou [ 22 - Cancelamento por solicitação do calouro ], se não existir lançamentos de frequência e notas, TODO o ingresso/matrículas do Calouro será removido.

Tabelas a serem gravadas/modificadas

  • [spClrIngExclui]
    • Para as situações 2 e 22:
      • INSERT: AcdSituacao;
      • UPDATE: AcdMatricula, AcdStcAtual;
      • INSERT/UPDATE: ClrMatricula;
    • Para situação 3 ou situações 2 e 22 sem lançamentos de frequência e nota:
      • É chamado [spClrIngDfzMatricula] que irá realizar as seguintes alterações:
        • DELETE: AcdMtrNtComposta, AcdHstMtrNtComposta, AcdMtrNota, AcdHstMtrNota, AcdVstProva, AcdStcAtual, AcdMtrEnsFrequencia, AcdMtrEnsalamento, AcdHstMtrEnsalamento, AcdHstEquivalencia, AcdHstDscAproveitamento, AcdSituacao, AcdRglJubilamento, AcdMatricula, AcdHistorico, AcdDdsVestibular, AcdCrsDocumentacao, AcdAtvComplementares, AcdCrsDctEmtWeb, AcdCurso, Rlc_PssFisica_Vinculo, Academico;
        • INSERT/UPDATE: ClrMatricula.

Parâmetros

  • Obrigatórios:
    • @prmPrcSlt_Codigo INT - Código do Processo Seletivo (Academus). Ex: 20251 - Concurso Vestibular 2025.
    • @prmChm_Codigo INT - Código da Sequência da Chamada do Processo Seletivo (Academus). Ex: 1 - Edital 005 2025 Convocação 1...
    • @prmCrsChm_Codigo INT - Código do Curso da Chamada (SGPS). Ex: 19324 - Ciências da Computação/Integral
    • @prmInscrClr_Codigo VARCHAR(100) - Número de inscrição do calouro no Processo Seletivo (SGPS). Ex: 364322
    • @prmClrMtrPssFsc_AltCodigo INT - Código da pessoa física do USUÁRIO que está realizando a inclusão.
    • @prmCdgClrMtrSituacao INT - Código da situação a ser realizada: 2, 3, 22.
  • Obrigatório para Cancelamento
    • @prmDtCancelamento DATE - Para situações 2 ou 22 deve ser informado, não é utilizado para situação 3.

Dependências

[BDAcademicoProducao].[dbo].[spClrIngDfzMatricula] @prmPssFsc_CdgAcademico, @prmAcdCrs_SqnFormacao

  • Chamada exclusivamente pela [spClrIngExclui];
  • Realiza a exclusão lógica de todos os registros do calouro.

Requisitos

  • O calouro deve estar inscrito no Processo Seletivo informado via parâmetro @prmPrcSlt_Codigo;
  • O calouro deve ter alguma matrícula confirmada no Academus.

Stored Procedure Auxiliares

  • [BDAcademicoProducao].[dbo].[fnClrIngVrfTmFrqENota](@prmPssFsc_CdgAcademico Int, @prmAcdCrs_SqnFormacao Int).
    • Realiza a verificação de nota e frequência do acadêmico caso existam registros retorna 1 (TRUE), se não retorna 0 (FALSE).

Retorno

  • Em Caso de Sucesso
    • Em uma execução bem-sucedida, a stored procedure não retorna dados, mas uma consulta SELECT vazia, o que garante a compatibilidade com sistemas como o Delphi.
  • Em Caso de Erro
    • Em situações de erro, a procedure retorna uma tabela de logs no seguinte formato:
      • Tp_Registro (VARCHAR): O tipo de registro. O valor retornado é 'ERRO'.
      • Observacoes (NVARCHAR): A descrição detalhada do erro.
Exemplo de retorno de Erro pela Stored Procedure
Tp_Registro Observacoes
ERRO Não encontrado cadastro para inscrição informada:

Stored Procedure: [BDAcademicoProducao].[dbo].[spClrIngEnsala]

A rotina realiza o ensalamento dos calouros nas ofertas disponíveis, conforme as disciplinas cadastradas na tabela AcdMatricula.

Tabelas a serem gravadas/modificadas

INSERT: AcdMtrEnsalamento

Parâmetros

  • @prmPssFsc_CdgAcademico INT - Código da pessoa física do Calouro;
  • @prmAcdCrs_SqnFormacao INT - Código de Sequência de Formação do Academus;
  • @prmVrfChoqueHorario CHAR(1) - Parâmetro booleano para verificar choque de horário das disciplinas, utilize 'T' (True) para realizar a verificação e 'F' (False) para não verificar;
  • @prmDtEnsalamento DATE - Data da realização do ensalamento.

Requisitos

  • Acadêmico deve estar matriculado nas disciplinas para realizar o ensalamento.

Retorno

  • Caso de Sucesso
Caso o ensalamento seja concluído com sucesso para todas as ofertas disponíveis, a procedure não retorna dados, mas sim uma consulta SELECT vazia para garantir a compatibilidade com o Delphi.
  • Caso de Impedimento
Se a procedure identificar impedimentos para o ensalamento, ela retorna um SELECT contendo os motivos (exemplo: Oferta 1: Sem vaga).
Exemplo de retorno Ensalamento
PssFsc_CdgAcademico AcdCrs_SqnFormacao PssFsc_Nome AcdMtr_SqnMatricula PrdLtv_PrdLetivo Crs_Codigo TrmCbc_Serie Dsc_Codigo TrmCbc_Sequencia Trm_Codigo AcdMtrEns_DtaEnsalamento AcdMtrEns_EnsTroca AcdCurso CrsNome AtlSerie AcdCodigo AcdNome SequenciaFormacao MtrPrdLetivo MtrCurso MtrSerie MtrCdgDisciplina MtrNomeDisciplina TrmPrdLetivo TrmCurso TrmSerie TrmCdgDisciplina TrmTurma TrmSqnCabecalho EnsOK Observacao
419184 1 M 1 20252 CSC0067 1 Csc1284 1 2025-07-28 00:00:00.000 F CSC0067 Fisioterapia 1 419184 M 1 20252 CSC0067 1 Csc1284 Imunologia N Turma cheia
419184 1 M 4 20251 CSC0067 1 Csc3491 1 2025-07-28 00:00:00.000 F CSC0067 Fisioterapia 1 419184 M 1 20251 CSC0067 1 Csc3491 Bioquímica N Turma cheia