SQL para obter a Oferta de Matrícula
Define as classes de disciplinas que o Aluno está apto a cursar, ou seja, e que estará disponível para o Aluno na interface web. A definição da oferta deve ser feita por meio de uma consulta sql, onde o usuário deverá editar a cláusula “From” e “Where” de modo a atender à regra definida pela Instituição. Os campos que compõem o “Select” devem seguir uma ordem pré-determinada, e a nomenclatura dos campos também não pode se alterada. A seguir é exibida a estrutura da cláusula “Select” que deverá ser atendida:
SELECT DISTINCT (vcc_id_classe) as id_classe, (cla_ds_classe) as ds_classe, (cla_id_periodo_letivo) as id_periodo_letivo, (atc_cd_atividade) as cd_atividade, (atc_id_atividade) as id_atividade, (atc_nm_atividade) as nm_atividade, (atc_qt_credito) as qt_credito, (atc_qt_horas) as qt_horas, (gcr_nu_periodo_curriculo) as nu_periodo_curriculo, (alo_id_horario) as id_horario, (dis_nu_dia) AS nu_dia, (hor_hr_inicio) AS hr_inicio, (hor_hr_fim) AS hr_fim, (rca_id_registro_curso) as id_registro_curso, (rcr_st_avaliacao_curricular) as st_avaliacao_curricular, “valor (S/N) que indica se a classe faz parte da sugestão de matrícula do aluno” as ch_sugestao, (hor_st_turno) AS st_turno, (cla_dt_inicio) as dt_inicio, (cla_dt_fim) as dt_fim, “valor (S/N) que indica se a classe consta na proposta de matrícula do aluno” as ch_consta_proposta, (nat_ds_natureza) as ds_natureza, (nat_ch_grade) as ch_consta_grade, (nat_ch_obrigatoria) as ch_natureza_obrigatória
O SQL responsável por obter a Oferta de Matrícula será executado num contexto de matrícula de um Aluno, então, para que a consulta possa identificar o Aluno e o período letivo, o usuário ao definir o sql de oferta deve obrigatoriamente utilizar as variáveis @id_registro_curso e @id_periodo_letivo. Exemplo:
Select ...........
From ...........
Where rca_id_registro_curso = @id_registro_curso
and cla_id_periodo_letivo = @id_periodo_letivo …
Quando o sql que define a Oferta de Matrícula for utilizado pela interface web, as variáveis serão substituídas pelos valores de identificação do Aluno e do período letivo.
Opcionalmente o usuário pode fazer uso da variável @nu_limite_oferta no sql de Oferta de Matrícula para indicar um limite de períodos posteriores ao período que o Aluno está apto a cursar, ou seja, o usuário pode definir que a oferta só deve listar disciplinas cujo período na grade curricular seja inferior ou igual a “n” períodos posteriores ao período do Aluno. Quando o sql de oferta for utilizado pela interface de matrícula web, a variável @nu_limite_oferta será substituída pelos valores definidos nos parâmetros do sistema (ver com o Gestor do Sistema).