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

De Wiki Unioeste NTI
Ir para navegaçãoIr para pesquisar
Linha 128: Linha 128:


== Stored Procedure: [BDAcademicoProducao].[dbo].[spClrIngEnsala] ==
== 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 sejam identificados impedimentos para o ensalamento, a procedure retorna um SELECT com os respectivos motivos (exemplo: Oferta 1: Sem vaga).
* Caso o ensalamento ocorra com sucesso para as ofertas disponíveis, nenhum dado é retornado — apenas uma consulta SELECT vazia, garantindo compatibilidade com o Delphi.
{| 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 das 15h34min de 29 de agosto 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

ClrMatricula, AcdMatricula, AcdSituacao, AcdStcAtual, AcdDdsVestibular, Academico, Rlc_PssFisca_Vinculo, AcdCurso

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: 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] - É 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.
  • O calouro deve estar no cadastro de Pessoa Física, item validado pelo CPF;
  • O calouro deve ter seu 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

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'.
  • Sst_Sgps
  • Sst_Academus
  • Vst_Codigo
  • PrdLtv_Grupo
  • Crs_Codigo
  • Observacoes
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

Retorna registro de log de erros

  • Tp_Registro (VARCHAR): O tipo de registro. Possíveis valores: 'ERRO'.
  • Observacoes (NVARCHAR): Descrição especificada no retorno.
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 sejam identificados impedimentos para o ensalamento, a procedure retorna um SELECT com os respectivos motivos (exemplo: Oferta 1: Sem vaga).
  • Caso o ensalamento ocorra com sucesso para as ofertas disponíveis, nenhum dado é retornado — apenas uma consulta SELECT vazia, garantindo compatibilidade com o Delphi.
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