Subversion Repositories bacoAlunos

Rev

Rev 1283 | Blame | Compare with Previous | Last modification | View Log | RSS feed


66593 da a todas a turmas teórica olga louro
todas tem 3 tipologias

prat 704311 17 18 24 26 (eduardo) 31

704318
704320

/*Esta query mostra que neste momento apenas alguns casos usam o campo Turma TP de resto tudo usa Turma_T
os cursos fora do normal são os cursos 9 e 626*/

SELECT DISTINCT CSE.T_INSCRI.CD_TURMA_T ,CSE.T_INSCRI.CD_TURMA_P,CSE.T_INSCRI.CD_TURMA_L  , CSE.T_INSCRI.CD_TURMA_TP, CSE.T_INSCRI.CD_CURSO FROM CSE.T_INSCRI WHERE CSE.T_INSCRI.CD_LECTIVO = '201415';
           
SELECT CSE.T_INSCRI.CD_TIPDIS AS CD_TIPDIS,
            CSE.T_ALUNOS.CD_ALUNO,
            CSE.T_INSCRI.CD_DISCIP AS CD_DISCIP,  
            CSE.T_INSCRI.CD_DURACAO AS CD_DURACAO,
            CSE.T_INSCRI.CD_CURSO AS CD_CURSO,
            CSE.T_INSCRI.CD_TURMA_T AS CD_TURMA,
            CSE.T_INSCRI.CD_TURMA_P,
            CSE.T_INSCRI.CD_TURMA_L,
            CSE.T_INSCRI.CD_TURMA_TP,
            CSE.T_INSCRI.CD_TURMA_T
            FROM CSE.T_ALUNOS INNER JOIN
            (CSE.T_INSCRI INNER JOIN CSE.T_TBDISCIP ON CSE.T_INSCRI.CD_DISCIP = CSE.T_TBDISCIP.CD_DISCIP)
            ON CSE.T_ALUNOS.CD_ALUNO = CSE.T_INSCRI.CD_ALUNO WHERE /*CSE.T_INSCRI.CD_DISCIP = 704320  
            AND*/
(((CSE.T_TBDISCIP.CD_INSTITUIC)=4) AND ((CSE.T_INSCRI.CD_LECTIVO)='201415')
            AND ((CSE.T_ALUNOS.CD_SITUA_PAR)=1) AND ((CSE.T_INSCRI.CD_STATUS)<>5)
            AND (CSE.T_INSCRI.CD_TIPDIS = 2 OR CSE.T_INSCRI.CD_TIPDIS = 1 OR CSE.T_INSCRI.CD_TIPDIS = 6))
           
           
           
           
            SELECT
            *
            FROM CSE.T_INSCRI INNER JOIN CSE.T_TBDISCIP ON CSE.T_INSCRI.CD_DISCIP=CSE.T_TBDISCIP.CD_DISCIP
            WHERE CSE.T_INSCRI.CD_CURSO = 19 AND CSE.T_TBDISCIP.CD_INSTITUIC=1 AND CSE.T_INSCRI.CD_TIPDIS = 1 AND CSE.T_INSCRI.CD_STATUS<>5 AND CSE.T_INSCRI.CD_DURACAO='S1' AND CSE.T_INSCRI.CD_LECTIVO='201516'
           
           
           
           
 /*Selecionar as entradas do horario de referencia do Eduardo, todos os anos*/
 SELECT * FROM CSH.T_DETALHE_HORARIO_REF JOIN CSH.T_HORARIO_REFERENCIA ON
 CSH.T_HORARIO_REFERENCIA.CAMPO_REFERENCIA = CSH.T_DETALHE_HORARIO_REF.CAMPO_REFERENCIA AND
 CSH.T_HORARIO_REFERENCIA.NR_AULA = CSH.T_DETALHE_HORARIO_REF.NR_AULA WHERE CD_DOCENTE=66587;  
 
 
 
 
 /*Selecionar turmas nas cadeiras da ESSP 201516, através da tabela de inscricoes dos alunos */
 SELECT DISTINCT CSE.T_INSCRI.CD_TURMA_T AS CD_TURMA_T,
            CSE.T_INSCRI.CD_DURACAO AS CD_DURACAO,
            CSE.T_INSCRI.CD_LECTIVO AS CD_LECTIVO,
            CSE.T_INSCRI.CD_CURSO AS CD_CURSO
            FROM CSE.T_INSCRI INNER JOIN CSE.T_TBDISCIP ON CSE.T_INSCRI.CD_DISCIP=CSE.T_TBDISCIP.CD_DISCIP
            WHERE CSE.T_TBDISCIP.CD_INSTITUIC=4 AND CSE.T_INSCRI.CD_TIPDIS = 1 AND CSE.T_INSCRI.CD_STATUS<>5 AND CSE.T_INSCRI.CD_DURACAO='S1' AND CSE.T_INSCRI.CD_LECTIVO='201516';
           
           
           
           
/*CODIGO SUM_TIPO_AULA E AFETADO PELO QUE O DOCENTE COLOCA QUANDO LANÇA O SUMARIO NO NETPA*/
/*NO ENTANTO O CODIGO TIPO_OCUPACAO VEM DO HORARIO DE REFERENCIA E SAO OS CÓDIGOS DO TIPO DE OCUPACAO
OS CODIGOS SAO LIMITADOS AOS SEGUINTES*/

/*Na ESTG Os tipos de Ocupação é quase sempre aulas*/
SELECT * FROM CSH.T_TBTIPOS_OCUPACAO;
/*Esta query extrai os sumários do Horario de Trabalho do docente 20128, tem o CD_TIPO_AULA DA COMBOBOX DO NETPA*/
SELECT
            CSE.T_TBDISCIP.CD_INSTITUIC,
           
           
            CSH.T_OCUPACOES.DT_OCUPACAO AS DT_OCUPACAO,
            CSH.T_OCUPACOES.NR_OCUPACAO AS NR_OCUPACAO,
            CSH.T_OCUPACOES.CD_TIPO_OCUPACAO AS CD_TIPO_OCUPACAO,
            CSH.T_OCUPACOES.TOTAL_CELULAS AS TOTAL_CELULAS,
            CSH.T_OCUPACOES.OBSERVACOES AS OBSERVACOES,
            CSH.T_OCUPACOES.NR_AULA AS NR_AULA,

            CSH.T_DETALHE_OCUPACAO.DESCRICAO AS DO_DESCRICAO,
            CSH.T_DETALHE_OCUPACAO.CD_SALA AS DO_CD_SALA,
            CSH.T_DETALHE_OCUPACAO.CD_RESPONSAVEL AS DO_CD_RESPONSAVEL,
            CSH.T_DETALHE_OCUPACAO.CD_SITUACAO AS DO_CD_SITUACAO,
            CSH.T_DETALHE_OCUPACAO.CD_SUMARIO AS DO_CD_SUMARIO,


            CSH.T_DETALHE_AULA.CD_LECTIVO AS DA_CD_LECTIVO,
            CSH.T_DETALHE_AULA.CD_PERIODO AS DA_CD_PERIODO,
            CSH.T_DETALHE_AULA.CD_DISCIP AS DA_CD_DISCIP,
            CSH.T_DETALHE_AULA.CD_TURMA AS DA_CD_TURMA,
            CSH.T_DETALHE_AULA.CD_DOCENTE AS DA_CD_DOCENTE,
            CSH.T_DETALHE_AULA.CD_SALA AS DA_CD_SALA,
            CSH.T_DETALHE_AULA.CD_SUMARIO AS DA_CD_SUMARIO,


            CSD.T_SUMARIOS_AULAS.HORA_INICIAL AS SUM_HORA_INICIAL  ,
            CSD.T_SUMARIOS_AULAS.HORA_FINAL AS SUM_HORA_FINAL  ,
            CSD.T_SUMARIOS_AULAS.NUMERO_ALUNOS AS SUM_NUMERO_ALUNOS,  
            CSD.T_SUMARIOS_AULAS.NUMERO_AULA AS SUM_NUMERO_AULA  ,
            CSD.T_SUMARIOS_AULAS.CD_TIPO_AULA AS SUM_CD_TIPO_AULA ,
            CSD.T_SUMARIOS_AULAS.TITULO AS SUM_TITULO  ,
            CSD.T_SUMARIOS_AULAS.DESCRICAO AS SUM_DESCRICAO,
            CSD.T_SUMARIOS_AULAS.IDENTIFICADOR AS SUM_IDENTIFICADOR,
            CSD.T_SUMARIOS_AULAS.CD_ESTADO AS SUM_CD_ESTADO,
            CSD.T_SUMARIOS_AULAS.NR_PRESENCAS AS SUM_NR_PRESENCAS,
            CSD.T_SUMARIOS_AULAS.HORA_INICIAL AS HORA_INICIAL,
            CSD.T_SUMARIOS_AULAS.HORA_FINAL AS HORA_FINAL
           
            FROM

            ((((CSH.T_OCUPACOES LEFT OUTER JOIN CSH.T_DETALHE_OCUPACAO ON
            CSH.T_DETALHE_OCUPACAO.CAMPO_REFERENCIA = CSH.T_OCUPACOES.CAMPO_REFERENCIA
            AND
            CSH.T_DETALHE_OCUPACAO.DT_OCUPACAO = CSH.T_OCUPACOES.DT_OCUPACAO
            AND
            CSH.T_DETALHE_OCUPACAO.NR_OCUPACAO = CSH.T_OCUPACOES.NR_OCUPACAO
            )
            LEFT OUTER JOIN CSH.T_DETALHE_AULA ON
            CSH.T_DETALHE_AULA.CAMPO_REFERENCIA = CSH.T_OCUPACOES.CAMPO_REFERENCIA
            AND
            CSH.T_DETALHE_AULA.DT_OCUPACAO = CSH.T_OCUPACOES.DT_OCUPACAO
            AND
            CSH.T_DETALHE_AULA.NR_OCUPACAO = CSH.T_OCUPACOES.NR_OCUPACAO
            )
            LEFT OUTER JOIN CSD.T_SUMARIOS_AULAS ON
            CSD.T_SUMARIOS_AULAS.CD_SUMARIO = CSH.T_DETALHE_AULA.CD_SUMARIO
            )
            LEFT OUTER JOIN CSE.T_TURMA ON
            CSH.T_DETALHE_AULA.CD_TURMA = CSE.T_TURMA.CD_TURMA
            AND
            CSH.T_DETALHE_AULA.CD_LECTIVO = CSE.T_TURMA.CD_LECTIVO
            AND
            CSH.T_DETALHE_AULA.CD_PERIODO = CSE.T_TURMA.CD_DURACAO
            AND
            CSH.T_DETALHE_AULA.CD_DISCIP = CSE.T_TURMA.CD_DISCIP
            )
            JOIN CSE.T_TBDISCIP ON CSE.T_TBDISCIP.CD_DISCIP =  CSH.T_DETALHE_AULA.CD_DISCIP
            WHERE
           
            /*VER AQUI OS TIPOS DE OCUPACAO DE ATSI SEMPRE 1 -> Aulas*/
           /* CD_DOCENTE = 20128*/
           CSE.T_TBDISCIP.CD_DISCIP=201805
           AND CSH.T_DETALHE_AULA.CD_LECTIVO = '201516'
           /*AND CSH.T_DETALHE_AULA.CD_PERIODO = 'S1'*/
           /*AND (CSE.T_TURMA.CD_CURSO = '9119' )*/
           ORDER BY CSH.T_OCUPACOES.DT_OCUPACAO ASC;
           
            SELECT * FROM CSH.T_DETALHE_AULA WHERE CSH.T_DETALHE_AULA.CD_DISCIP=201400;

SELECT * FROM CSH.T_DETALHE_AULA WHERE CSH.T_DETALHE_AULA.CD_DISCIP=201833;            
/*
Extrai do Horario de Trabalho (dos Sumários) todas as combinações de códigos Tipo ocupação para todas as cadeiras do docente
20128
*/
           
SELECT DISTINCT
            CSE.T_TBDISCIP.CD_INSTITUIC,
            CSH.T_OCUPACOES.CD_TIPO_OCUPACAO AS CD_TIPO_OCUPACAO,
            CSH.T_DETALHE_AULA.CD_LECTIVO AS DA_CD_LECTIVO,
            CSH.T_DETALHE_AULA.CD_PERIODO AS DA_CD_PERIODO,
            CSH.T_DETALHE_AULA.CD_DISCIP AS DA_CD_DISCIP,
            CSH.T_DETALHE_AULA.CD_TURMA AS DA_CD_TURMA,
            CSH.T_DETALHE_AULA.CD_DOCENTE AS DA_CD_DOCENTE,
            CSD.T_SUMARIOS_AULAS.CD_TIPO_AULA AS SUM_CD_TIPO_AULA  
         
            FROM

            ((((CSH.T_OCUPACOES LEFT OUTER JOIN CSH.T_DETALHE_OCUPACAO ON
            CSH.T_DETALHE_OCUPACAO.CAMPO_REFERENCIA = CSH.T_OCUPACOES.CAMPO_REFERENCIA
            AND
            CSH.T_DETALHE_OCUPACAO.DT_OCUPACAO = CSH.T_OCUPACOES.DT_OCUPACAO
            AND
            CSH.T_DETALHE_OCUPACAO.NR_OCUPACAO = CSH.T_OCUPACOES.NR_OCUPACAO
            )
            LEFT OUTER JOIN CSH.T_DETALHE_AULA ON
            CSH.T_DETALHE_AULA.CAMPO_REFERENCIA = CSH.T_OCUPACOES.CAMPO_REFERENCIA
            AND
            CSH.T_DETALHE_AULA.DT_OCUPACAO = CSH.T_OCUPACOES.DT_OCUPACAO
            AND
            CSH.T_DETALHE_AULA.NR_OCUPACAO = CSH.T_OCUPACOES.NR_OCUPACAO
            )
            LEFT OUTER JOIN CSD.T_SUMARIOS_AULAS ON
            CSD.T_SUMARIOS_AULAS.CD_SUMARIO = CSH.T_DETALHE_AULA.CD_SUMARIO
            )
            LEFT OUTER JOIN CSE.T_TURMA ON
            CSH.T_DETALHE_AULA.CD_TURMA = CSE.T_TURMA.CD_TURMA
            AND
            CSH.T_DETALHE_AULA.CD_LECTIVO = CSE.T_TURMA.CD_LECTIVO
            AND
            CSH.T_DETALHE_AULA.CD_PERIODO = CSE.T_TURMA.CD_DURACAO
            AND
            CSH.T_DETALHE_AULA.CD_DISCIP = CSE.T_TURMA.CD_DISCIP
            )
            JOIN CSE.T_TBDISCIP ON CSE.T_TBDISCIP.CD_DISCIP =  CSH.T_DETALHE_AULA.CD_DISCIP
            WHERE
           
            CD_DOCENTE = 20128  AND
             CSH.T_DETALHE_AULA.CD_LECTIVO = '201516'
            AND CSH.T_DETALHE_AULA.CD_PERIODO = 'S1';


/*
Extrai do Horario de Trabalho (dos Sumários) todas as combinações de códigos Tipo aula cadeiras do docente
20128
QUERY DAS TOPOLOGIAS A PARTIR DAS CADEIRAS
*/
           
SELECT DISTINCT
            CSE.T_TBDISCIP.CD_INSTITUIC,
            CSH.T_DETALHE_AULA.CD_LECTIVO AS CD_LECTIVO,
            CSH.T_DETALHE_AULA.CD_PERIODO AS CD_PERIODO,
            CSH.T_DETALHE_AULA.CD_DISCIP AS CD_DISCIP,
            CSH.T_DETALHE_AULA.CD_TURMA AS CD_TURMA,
            CSH.T_DETALHE_AULA.CD_DOCENTE AS CD_DOCENTE,
            CSD.T_SUMARIOS_AULAS.CD_TIPO_AULA AS CD_TIPO_AULA
            FROM CSH.T_DETALHE_AULA
              JOIN CSD.T_SUMARIOS_AULAS ON
                CSD.T_SUMARIOS_AULAS.CD_SUMARIO = CSH.T_DETALHE_AULA.CD_SUMARIO
                AND CSD.T_SUMARIOS_AULAS.CD_ESTADO = 1
              JOIN
                CSE.T_TURMA ON
                  CSH.T_DETALHE_AULA.CD_TURMA = CSE.T_TURMA.CD_TURMA
                  AND
                  CSH.T_DETALHE_AULA.CD_LECTIVO = CSE.T_TURMA.CD_LECTIVO
                  AND
                  CSH.T_DETALHE_AULA.CD_PERIODO = CSE.T_TURMA.CD_DURACAO
                  AND
                  CSH.T_DETALHE_AULA.CD_DISCIP = CSE.T_TURMA.CD_DISCIP
              JOIN
                CSE.T_TBDISCIP ON
                  CSE.T_TBDISCIP.CD_DISCIP =  CSH.T_DETALHE_AULA.CD_DISCIP
            WHERE
              (CSE.T_TURMA.CD_CURSO = '9500' OR CSE.T_TURMA.CD_CURSO IS NULL) AND
                CSE.T_TBDISCIP.CD_INSTITUIC = 4 AND
                CSH.T_DETALHE_AULA.CD_DISCIP = 704330 AND
                CSH.T_DETALHE_AULA.CD_LECTIVO = '201516' AND
                CSH.T_DETALHE_AULA.CD_PERIODO = 'S1';

/*
Extrai do Horario de Trabalho (dos Sumários) todas as combinações de códigos Tipo ocupação, TIPO_AULA para todas as cadeiras do
politecnico porque faz um distinct no Código de Instituicao
*/
           
SELECT DISTINCT
            CSE.T_TBDISCIP.CD_INSTITUIC,
            CSD.T_SUMARIOS_AULAS.CD_TIPO_AULA AS SUM_CD_TIPO_AULA
            /*CSH.T_OCUPACOES.CD_TIPO_OCUPACAO AS CD_TIPO_OCUPACAO*/
             
         
            FROM

            ((((CSH.T_OCUPACOES LEFT OUTER JOIN CSH.T_DETALHE_OCUPACAO ON
            CSH.T_DETALHE_OCUPACAO.CAMPO_REFERENCIA = CSH.T_OCUPACOES.CAMPO_REFERENCIA
            AND
            CSH.T_DETALHE_OCUPACAO.DT_OCUPACAO = CSH.T_OCUPACOES.DT_OCUPACAO
            AND
            CSH.T_DETALHE_OCUPACAO.NR_OCUPACAO = CSH.T_OCUPACOES.NR_OCUPACAO
            )
            LEFT OUTER JOIN CSH.T_DETALHE_AULA ON
            CSH.T_DETALHE_AULA.CAMPO_REFERENCIA = CSH.T_OCUPACOES.CAMPO_REFERENCIA
            AND
            CSH.T_DETALHE_AULA.DT_OCUPACAO = CSH.T_OCUPACOES.DT_OCUPACAO
            AND
            CSH.T_DETALHE_AULA.NR_OCUPACAO = CSH.T_OCUPACOES.NR_OCUPACAO
            )
            LEFT OUTER JOIN CSD.T_SUMARIOS_AULAS ON
            CSD.T_SUMARIOS_AULAS.CD_SUMARIO = CSH.T_DETALHE_AULA.CD_SUMARIO
            )
            LEFT OUTER JOIN CSE.T_TURMA ON
            CSH.T_DETALHE_AULA.CD_TURMA = CSE.T_TURMA.CD_TURMA
            AND
            CSH.T_DETALHE_AULA.CD_LECTIVO = CSE.T_TURMA.CD_LECTIVO
            AND
            CSH.T_DETALHE_AULA.CD_PERIODO = CSE.T_TURMA.CD_DURACAO
            AND
            CSH.T_DETALHE_AULA.CD_DISCIP = CSE.T_TURMA.CD_DISCIP
            )
            JOIN CSE.T_TBDISCIP ON CSE.T_TBDISCIP.CD_DISCIP =  CSH.T_DETALHE_AULA.CD_DISCIP
            WHERE
           
           
             CSH.T_DETALHE_AULA.CD_LECTIVO = '201516'
            AND CSH.T_DETALHE_AULA.CD_PERIODO = 'S1'
            ORDER BY CSE.T_TBDISCIP.CD_INSTITUIC ASC;            
           
/*Na ESTG Os tipos de Ocupação é quase sempre aulas*/
SELECT * FROM CSH.T_TBTIPOS_OCUPACAO;

/*
Extrai o Horario de um Docente, CD_TIPO_AULA tem o Tipo Ocupação mas isto nao chega porque à entradas no
Horário de Trabalho que nao sao marcadas logo nao estão no horário
*/

SELECT * FROM CSH.T_DETALHE_HORARIO_REF JOIN CSH.T_HORARIO_REFERENCIA ON
CSH.T_HORARIO_REFERENCIA.CAMPO_REFERENCIA=CSH.T_DETALHE_HORARIO_REF.CAMPO_REFERENCIA AND
CSH.T_HORARIO_REFERENCIA.NR_AULA=CSH.T_DETALHE_HORARIO_REF.NR_AULA WHERE CD_LECTIVO='201516' AND CD_DOCENTE=20128;

/*Aqui só ha 21 e 19 */
SELECT * FROM CSH.T_DETALHE_HORARIO_REF JOIN CSH.T_HORARIO_REFERENCIA ON
CSH.T_HORARIO_REFERENCIA.CAMPO_REFERENCIA=CSH.T_DETALHE_HORARIO_REF.CAMPO_REFERENCIA AND
CSH.T_HORARIO_REFERENCIA.NR_AULA=CSH.T_DETALHE_HORARIO_REF.NR_AULA WHERE CD_LECTIVO='201516' AND CD_DOCENTE=66587;

SELECT * FROM CSH.T_HORARIO_REFERENCIA ;


/* O QUE TEMOS NO HORARIO DE REFERENCIA DEVE CHEGAR * SE FORMOS PARA AS AULAS E HORARIO DE TRABALHO
FICAMOS COM MUITO LIXO PARA TRATAR*/

/*NO HORARIO DE REFERENCIA APENAS SÃO USADOS OS Códigos 1, 19,20,21,22,23  em 201516*/
SELECT DISTINCT  CD_TIPO_OCUP, DS_TIPO_OCUP FROM CSH.T_DETALHE_HORARIO_REF JOIN CSH.T_HORARIO_REFERENCIA ON
CSH.T_HORARIO_REFERENCIA.CAMPO_REFERENCIA=CSH.T_DETALHE_HORARIO_REF.CAMPO_REFERENCIA AND
CSH.T_HORARIO_REFERENCIA.NR_AULA=CSH.T_DETALHE_HORARIO_REF.NR_AULA JOIN CSH.T_TBTIPOS_OCUPACAO ON
CSH.T_TBTIPOS_OCUPACAO.CD_TIPO_OCUP = CD_TIPO_AULA  ;

/*TIPOS DE OCUPACAO PARA A CADEIRA 704326 em 201516*/
SELECT DISTINCT CD_TURMA,CD_DOCENTE,CD_TIPO_AULA, DS_TIPO_OCUP
FROM CSH.T_DETALHE_HORARIO_REF JOIN CSH.T_HORARIO_REFERENCIA ON
CSH.T_HORARIO_REFERENCIA.CAMPO_REFERENCIA=CSH.T_DETALHE_HORARIO_REF.CAMPO_REFERENCIA AND
CSH.T_HORARIO_REFERENCIA.NR_AULA=CSH.T_DETALHE_HORARIO_REF.NR_AULA
JOIN CSH.T_TBTIPOS_OCUPACAO ON
CSH.T_TBTIPOS_OCUPACAO.CD_TIPO_OCUP = CD_TIPO_AULA
WHERE CD_LECTIVO = '201516' AND CD_PERIODO='S1' AND CD_DISCIP = 704326;


SELECT * FROM CSP.T_FUNCIONARIOS INNER JOIN SIGES.T_INDIVIDUO ON SIGES.T_INDIVIDUO.ID_INDIVIDUO = CSP.T_FUNCIONARIOS.ID_INDIVIDUO WHERE  CD_FUNCIONARIO=20128;

SELECT * FROM CSP.T_FUNCIONARIOS INNER JOIN SIGES.T_INDIVIDUO ON SIGES.T_INDIVIDUO.ID_INDIVIDUO = CSP.T_FUNCIONARIOS.ID_INDIVIDUO WHERE  CD_FUNCIONARIO=20128;

/*TIPOS DE OCUPACAO PARA o docente 20128 em 201516*/´
SELECT DISTINCT CD_TURMA,CD_DOCENTE,CD_TIPO_AULA, DS_TIPO_OCUP, CD_DISCIP
FROM CSH.T_DETALHE_HORARIO_REF JOIN CSH.T_HORARIO_REFERENCIA ON
CSH.T_HORARIO_REFERENCIA.CAMPO_REFERENCIA=CSH.T_DETALHE_HORARIO_REF.CAMPO_REFERENCIA AND
CSH.T_HORARIO_REFERENCIA.NR_AULA=CSH.T_DETALHE_HORARIO_REF.NR_AULA
JOIN CSH.T_TBTIPOS_OCUPACAO ON
CSH.T_TBTIPOS_OCUPACAO.CD_TIPO_OCUP = CD_TIPO_AULA
WHERE CD_LECTIVO = '201516' AND CD_PERIODO='S1' AND CD_DOCENTE = 20128;

/*TIPOS DE OCUPACAO PARA o docente 20128 em 201516*/
SELECT DISTINCT CD_TURMA,CD_DOCENTE,CD_TIPO_AULA, DS_TIPO_OCUP, CD_DISCIP
FROM CSH.T_DETALHE_HORARIO_REF JOIN CSH.T_HORARIO_REFERENCIA ON
CSH.T_HORARIO_REFERENCIA.CAMPO_REFERENCIA=CSH.T_DETALHE_HORARIO_REF.CAMPO_REFERENCIA AND
CSH.T_HORARIO_REFERENCIA.NR_AULA=CSH.T_DETALHE_HORARIO_REF.NR_AULA
JOIN CSH.T_TBTIPOS_OCUPACAO ON
CSH.T_TBTIPOS_OCUPACAO.CD_TIPO_OCUP = CD_TIPO_AULA
WHERE CD_LECTIVO = '201516' AND CD_PERIODO='S1' AND CD_DOCENTE = 66587;



/*Por cadeira mas colocando o nome*/
SELECT DISTINCT CD_TURMA,NOME, CD_DOCENTE,CD_TIPO_AULA, DS_TIPO_OCUP
FROM CSH.T_DETALHE_HORARIO_REF JOIN CSH.T_HORARIO_REFERENCIA ON
CSH.T_HORARIO_REFERENCIA.CAMPO_REFERENCIA=CSH.T_DETALHE_HORARIO_REF.CAMPO_REFERENCIA AND
CSH.T_HORARIO_REFERENCIA.NR_AULA=CSH.T_DETALHE_HORARIO_REF.NR_AULA
JOIN CSH.T_TBTIPOS_OCUPACAO ON
CSH.T_TBTIPOS_OCUPACAO.CD_TIPO_OCUP = CD_TIPO_AULA
JOIN CSP.T_FUNCIONARIOS ON CSP.T_FUNCIONARIOS.CD_FUNCIONARIO = CD_DOCENTE
JOIN SIGES.T_INDIVIDUO ON SIGES.T_INDIVIDUO.ID_INDIVIDUO = CSP.T_FUNCIONARIOS.ID_INDIVIDUO
WHERE CD_LECTIVO = '201516' AND CD_PERIODO='S1' AND CD_DISCIP = 704326;




/*
NAO INTERESSA, OS TIPOS DE OCUPACAO VAO SER DESPREZADOS
PESQUISA DE CADEIRAS COMO ESTA NESTE MOMENTO NO BACO MAS COM UM ADICIONAL PARA APRESETAR O TIPO OCUPACAO
TEM DE SER ALTERADO PARA O CODIGO DO DOCENTE DA AULA e nao da turma
*/

SELECT DISTINCT CSH.T_OCUPACOES.CD_TIPO_OCUPACAO, DS_TIPO_OCUP,CSE.T_TBDISCIP.CD_DISCIP AS CD_DISCIP, CSD.T_DOC_TURMA.CD_TURMA AS CD_TURMA, CSD.T_DOC_TURMA.CD_LECTIVO, CD_DURACAO, CD_CURSO FROM ((CSD.T_DOC_TURMA INNER JOIN CSE.T_TBDISCIP ON CSE.T_TBDISCIP.CD_DISCIP =  CSD.T_DOC_TURMA.CD_DISCIP) INNER JOIN CSH.T_DETALHE_AULA ON CSH.T_DETALHE_AULA.CD_DOCENTE = CSD.T_DOC_TURMA.CD_DOCENTE AND CSH.T_DETALHE_AULA.CD_DISCIP = CSE.T_TBDISCIP.CD_DISCIP)
INNER JOIN CSH.T_OCUPACOES ON
CSH.T_OCUPACOES.CAMPO_REFERENCIA =  CSH.T_DETALHE_AULA.CAMPO_REFERENCIA
AND
CSH.T_OCUPACOES.NR_OCUPACAO =  CSH.T_DETALHE_AULA.NR_OCUPACAO
AND
CSH.T_OCUPACOES.DT_OCUPACAO =  CSH.T_DETALHE_AULA.DT_OCUPACAO
JOIN CSH.T_TBTIPOS_OCUPACAO ON
CSH.T_TBTIPOS_OCUPACAO.CD_TIPO_OCUP = CSH.T_OCUPACOES.CD_TIPO_OCUPACAO
WHERE CSD.T_DOC_TURMA.CD_LECTIVO='201516' AND CSE.T_TBDISCIP.CD_INSTITUIC=4 AND CSD.T_DOC_TURMA.CD_DOCENTE = 66587;

/*NAO INTERESSA TIPOS DE OCUPACAO VAO SER DESPREZADOS
Cadeiras nas instituicoes e tipos de ocupacao do horario de trabalho
Na 3 só metem o tipo 1 Aulas*/

SELECT DISTINCT CSH.T_OCUPACOES.CD_TIPO_OCUPACAO, DS_TIPO_OCUP
FROM ((CSD.T_DOC_TURMA INNER JOIN CSE.T_TBDISCIP ON CSE.T_TBDISCIP.CD_DISCIP =  CSD.T_DOC_TURMA.CD_DISCIP)
INNER JOIN CSH.T_DETALHE_AULA ON CSH.T_DETALHE_AULA.CD_DOCENTE = CSD.T_DOC_TURMA.CD_DOCENTE AND CSH.T_DETALHE_AULA.CD_DISCIP = CSE.T_TBDISCIP.CD_DISCIP)
INNER JOIN CSH.T_OCUPACOES ON
CSH.T_OCUPACOES.CAMPO_REFERENCIA =  CSH.T_DETALHE_AULA.CAMPO_REFERENCIA
AND
CSH.T_OCUPACOES.NR_OCUPACAO =  CSH.T_DETALHE_AULA.NR_OCUPACAO
AND
CSH.T_OCUPACOES.DT_OCUPACAO =  CSH.T_DETALHE_AULA.DT_OCUPACAO
JOIN CSH.T_TBTIPOS_OCUPACAO ON
CSH.T_TBTIPOS_OCUPACAO.CD_TIPO_OCUP = CSH.T_OCUPACOES.CD_TIPO_OCUPACAO
WHERE CSD.T_DOC_TURMA.CD_LECTIVO='201516' AND CSE.T_TBDISCIP.CD_INSTITUIC=1 ;








/*Daqui sai uma cadeira que é a 704330 qu não está no Horario de Referencia e que tem muitos docentes atribuidos, o que é isto?*/
SELECT DISTINCT CSE.T_TBDISCIP.CD_DISCIP AS CD_DISCIP, CSD.T_DOC_TURMA.CD_TURMA AS CD_TURMA, CSD.T_DOC_TURMA.CD_LECTIVO, CD_DURACAO, CD_CURSO FROM ((CSD.T_DOC_TURMA INNER JOIN CSE.T_TBDISCIP ON CSE.T_TBDISCIP.CD_DISCIP =  CSD.T_DOC_TURMA.CD_DISCIP) INNER JOIN CSH.T_DETALHE_AULA ON CSH.T_DETALHE_AULA.CD_DOCENTE = CSD.T_DOC_TURMA.CD_DOCENTE AND CSH.T_DETALHE_AULA.CD_DISCIP = CSE.T_TBDISCIP.CD_DISCIP) WHERE CSD.T_DOC_TURMA.CD_LECTIVO='201516' AND CSE.T_TBDISCIP.CD_INSTITUIC=3 AND CSD.T_DOC_TURMA.CD_DOCENTE = 22150;




/*
PESQUISA ORIGNAL NO WEB_SERVICE SEM ALTERACOES NECESSITA DE REVISAO
A pesquisa das cadeiras no BACO usa a tabela T_DOC_TURMA que associa docentes a turmas
depois faz um join com o detalhe aula sendo que o docente só tem a cadeira efetivamente depois de haver um sumário
preenchido alocado o que é uma segurança

Se ficar assim esse sumário poderá ter o código 1 de lançado e o numero do docente deverá ser filtrado não
na turma mas sim no DETALHE_AULA senão o que estamos a fazer é a devolver ligações na DOC_TURMa se houver um sumário
não interessa de quem

por outro lado

O que se pode é ignorar DETALHE_AULA e obrigar que o campo da T_DOC_TURMA.ASSOCIACAO_ACTIVA = 'S'
nao me parece mau de todo uma vez que como estavamos a fazer era mal e funcionava
porque mesmo que um docente estivesse nao ativo vinha sempre uma vez que o termo do DETALHE_AULA
era haver uma aula nao interessa por quem e' dada
*/

SELECT DISTINCT CSE.T_TBDISCIP.CD_DISCIP AS CD_DISCIP, CSD.T_DOC_TURMA.CD_TURMA AS CD_TURMA, CSD.T_DOC_TURMA.CD_LECTIVO, CD_DURACAO, CD_CURSO FROM ((CSD.T_DOC_TURMA INNER JOIN CSE.T_TBDISCIP ON CSE.T_TBDISCIP.CD_DISCIP =  CSD.T_DOC_TURMA.CD_DISCIP) INNER JOIN CSH.T_DETALHE_AULA ON CSH.T_DETALHE_AULA.CD_DOCENTE = CSD.T_DOC_TURMA.CD_DOCENTE AND CSH.T_DETALHE_AULA.CD_DISCIP = CSE.T_TBDISCIP.CD_DISCIP) WHERE CSD.T_DOC_TURMA.CD_LECTIVO='201516' AND CSE.T_TBDISCIP.CD_INSTITUIC=3 AND CSD.T_DOC_TURMA.CD_DOCENTE = 22150;


SELECT DISTINCT CSD.T_DOC_TURMA.CD_DOCENTE,CSE.T_TBDISCIP.CD_DISCIP AS CD_DISCIP, CSD.T_DOC_TURMA.CD_TURMA AS CD_TURMA, CSD.T_DOC_TURMA.CD_LECTIVO, CD_DURACAO, CD_CURSO FROM ((CSD.T_DOC_TURMA INNER JOIN CSE.T_TBDISCIP ON CSE.T_TBDISCIP.CD_DISCIP =  CSD.T_DOC_TURMA.CD_DISCIP) INNER JOIN CSH.T_DETALHE_AULA ON CSH.T_DETALHE_AULA.CD_DOCENTE = CSD.T_DOC_TURMA.CD_DOCENTE AND CSH.T_DETALHE_AULA.CD_DISCIP = CSE.T_TBDISCIP.CD_DISCIP) WHERE CSD.T_DOC_TURMA.CD_LECTIVO='201516' AND CSE.T_TBDISCIP.CD_INSTITUIC=1/*AND CSD.T_DOC_TURMA.CD_DOCENTE = 20201*/;


/*QUERY DAS CADEIRAS DOS DOCENTES EXTENDIDA PARA TIPOLOGIAS
ADICIONAR O T_SUMARIOS_AULA para o campo CD_TIPO_AULA

PRECISAMOS É DE UMA QUERY PARA DEVOLVER TIPOLOGIAS DE DOCENTES E ESQUECER
O VIR A CADEIRA COM TUDO DE UMA VEZ SENAO OBRIGAMOS A QUE HAJA UM SUMARIO LANCADO
PARA O DOCENTE APARECER NA CADEIRA*/


SELECT DISTINCT CSE.T_TBDISCIP.CD_DISCIP AS CD_DISCIP, CSD.T_DOC_TURMA.CD_TURMA AS CD_TURMA,CSD.T_SUMARIOS_AULAS.CD_TIPO_AULA AS SUM_CD_TIPO_AULA, CSD.T_DOC_TURMA.CD_LECTIVO, CD_DURACAO, CD_CURSO
FROM (((CSD.T_DOC_TURMA INNER JOIN CSE.T_TBDISCIP ON CSE.T_TBDISCIP.CD_DISCIP =  CSD.T_DOC_TURMA.CD_DISCIP)
INNER JOIN CSH.T_DETALHE_AULA ON
            CSH.T_DETALHE_AULA.CD_TURMA = CSD.T_DOC_TURMA.CD_TURMA
            AND
            CSH.T_DETALHE_AULA.CD_LECTIVO = CSD.T_DOC_TURMA.CD_LECTIVO
            AND
            CSH.T_DETALHE_AULA.CD_PERIODO = CSD.T_DOC_TURMA.CD_DURACAO
            AND
            CSH.T_DETALHE_AULA.CD_DISCIP = CSD.T_DOC_TURMA.CD_DISCIP)
INNER JOIN CSD.T_SUMARIOS_AULAS ON CSD.T_SUMARIOS_AULAS.CD_SUMARIO = CSH.T_DETALHE_AULA.CD_SUMARIO)
WHERE CSD.T_DOC_TURMA.CD_LECTIVO='201516' AND CSD.T_SUMARIOS_AULAS.CD_ESTADO = 1 AND CSH.T_DETALHE_AULA.CD_DOCENTE = 66587 AND CSE.T_TBDISCIP.CD_INSTITUIC= 4;


SELECT *
FROM (((CSD.T_DOC_TURMA INNER JOIN CSE.T_TBDISCIP ON CSE.T_TBDISCIP.CD_DISCIP =  CSD.T_DOC_TURMA.CD_DISCIP)
INNER JOIN CSH.T_DETALHE_AULA ON
            CSH.T_DETALHE_AULA.CD_TURMA = CSD.T_DOC_TURMA.CD_TURMA
            AND
            CSH.T_DETALHE_AULA.CD_LECTIVO = CSD.T_DOC_TURMA.CD_LECTIVO
            AND
            CSH.T_DETALHE_AULA.CD_PERIODO = CSD.T_DOC_TURMA.CD_DURACAO
            AND
            CSH.T_DETALHE_AULA.CD_DISCIP = CSD.T_DOC_TURMA.CD_DISCIP)
INNER JOIN CSD.T_SUMARIOS_AULAS ON CSD.T_SUMARIOS_AULAS.CD_SUMARIO = CSH.T_DETALHE_AULA.CD_SUMARIO)
WHERE CSD.T_DOC_TURMA.CD_LECTIVO='201516' AND CSD.T_SUMARIOS_AULAS.CD_ESTADO = 1 AND CSH.T_DETALHE_AULA.CD_DOCENTE = 66587 AND CSE.T_TBDISCIP.CD_INSTITUIC= 4;



/*
QUERY DO EXCEL
Query de extracao das tipologias no final do semestre
Atenção esta query acusa Tipologias portanto apenas devolve cadeiras com pelo menos um sumário válido lançado
Não pode ser adaptada ao Baco sob pena de os docentes só verem as cadeiras no baco após lançarem um sumário
*/

SELECT DISTINCT CSE.T_TBDISCIP.CD_INSTITUIC , SIGES.T_TBINSTITUIC.DS_INSTITUIC, CSH.T_DETALHE_AULA.CD_DOCENTE,
SIGES.T_INDIVIDUO.NOME, CSE.T_TBDISCIP.CD_DISCIP AS CD_DISCIP,
CSE.T_TBDISCIP.DS_DISCIP AS UNIDADE,
CSD.T_DOC_TURMA.CD_TURMA AS CD_TURMA,
CSD.T_SUMARIOS_AULAS.CD_TIPO_AULA AS SUM_CD_TIPO_AULA,
CSD.T_DOC_TURMA.CD_LECTIVO,
CD_DURACAO,
CSD.T_DOC_TURMA.CD_CURSO,
CSE.T_CURSOS.NM_CURSO
FROM (((CSD.T_DOC_TURMA INNER JOIN CSE.T_TBDISCIP ON CSE.T_TBDISCIP.CD_DISCIP =  CSD.T_DOC_TURMA.CD_DISCIP)
INNER JOIN CSH.T_DETALHE_AULA ON
            CSH.T_DETALHE_AULA.CD_DOCENTE = CSD.T_DOC_TURMA.CD_DOCENTE
            AND
            CSH.T_DETALHE_AULA.CD_TURMA = CSD.T_DOC_TURMA.CD_TURMA
            AND
            CSH.T_DETALHE_AULA.CD_LECTIVO = CSD.T_DOC_TURMA.CD_LECTIVO
            AND
            CSH.T_DETALHE_AULA.CD_PERIODO = CSD.T_DOC_TURMA.CD_DURACAO
            AND
            CSH.T_DETALHE_AULA.CD_DISCIP = CSD.T_DOC_TURMA.CD_DISCIP)
INNER JOIN CSD.T_SUMARIOS_AULAS ON CSD.T_SUMARIOS_AULAS.CD_SUMARIO = CSH.T_DETALHE_AULA.CD_SUMARIO)
INNER JOIN CSE.T_CURSOS ON CSE.T_CURSOS.CD_CURSO = CSD.T_DOC_TURMA.CD_CURSO
JOIN SIGES.T_TBINSTITUIC ON SIGES.T_TBINSTITUIC.CD_INSTITUIC = CSE.T_TBDISCIP.CD_INSTITUIC
JOIN CSP.T_FUNCIONARIOS ON CSP.T_FUNCIONARIOS.CD_FUNCIONARIO = CSH.T_DETALHE_AULA.CD_DOCENTE /*Tambem mudei isto para o docente vir do detalhe aula e nao da turma*/
JOIN SIGES.T_INDIVIDUO ON SIGES.T_INDIVIDUO.ID_INDIVIDUO = CSP.T_FUNCIONARIOS.ID_INDIVIDUO
WHERE CSD.T_DOC_TURMA.CD_LECTIVO='201516' AND CSD.T_SUMARIOS_AULAS.CD_ESTADO = 1
AND CSH.T_DETALHE_AULA.CD_DOCENTE = 66587 ORDER BY CSE.T_TBDISCIP.CD_INSTITUIC, SIGES.T_INDIVIDUO.NOME, CSE.T_TBDISCIP.DS_DISCIP;


SELECT * FROM SIGES.T_TBINSTITUIC;

SELECT * FROM CSD.T_TBSTASUMARIOS ;



/*
NOVA QUERY V1 OUTPUT ORIGINAL PARA OBTER CADEIRAS DE DOCENTES
NAO NECESSITA DE SUMARIOS LANCADOS
CAMPO ASSOCIACAO_ATIVA JA NAO FUNCIONA NAO PÔDE SER USADO
*/

SELECT DISTINCT CSE.T_TBDISCIP.CD_DISCIP AS CD_DISCIP,
              CSD.T_DOC_TURMA.CD_TURMA AS CD_TURMA,
              CSD.T_DOC_TURMA.CD_LECTIVO,
              CD_DURACAO,
              CD_CURSO
              /*CSD.T_DOC_TURMA.**/
FROM (CSD.T_DOC_TURMA
  INNER JOIN CSE.T_TBDISCIP ON CSE.T_TBDISCIP.CD_DISCIP =  CSD.T_DOC_TURMA.CD_DISCIP)
 
 
WHERE CSD.T_DOC_TURMA.CD_LECTIVO='201516' AND CSE.T_TBDISCIP.CD_INSTITUIC=4 AND CSD.T_DOC_TURMA.CD_DOCENTE = 66587 ORDER BY CSD.T_DOC_TURMA.CD_LECTIVO;
           
           

/*
NOVA QUERY V2 TESTADA OUTPUT COM TOLOPOGIAS PARA OBTER CADEIRAS DE DOCENTES
NAO NECESSITA DE SUMARIOS LANCADOS
ASSOCIACAO ATIVA JA NAO FUNCIONA
DEVOLVE UMA LINHA POR CADEIRA COM OU SEM TOPOLOGIA CASO HAJA
SE HOUVER MAIS QUE UMA IRA DEVOLVER TANTAS LINHAS QUANTAS AS TOPOLOGIAS
*/

SELECT DISTINCT CSE.T_TBDISCIP.CD_DISCIP AS CD_DISCIP,
             
              /*CSD.T_DOC_TURMA.CD_TURMA AS CD_TURMA, */
              CSD.T_DOC_TURMA.CD_LECTIVO,
              CSD.T_DOC_TURMA.CD_DURACAO,
              CSD.T_DOC_TURMA.CD_CURSO
              /*CSD.T_DOC_TURMA.CD_FUNCAO_DOC,
              CSD.T_SUMARIOS_AULAS.CD_TIPO_AULA*/

              /*, CSH.T_DETALHE_AULA.*,
              CSD.T_SUMARIOS_AULAS.CD_ESTADO*/

              /*CSD.T_DOC_TURMA.**/
FROM (CSD.T_DOC_TURMA
  INNER JOIN CSE.T_TBDISCIP ON CSE.T_TBDISCIP.CD_DISCIP =  CSD.T_DOC_TURMA.CD_DISCIP)
   LEFT OUTER JOIN CSH.T_DETALHE_AULA ON
            /*CSH.T_DETALHE_AULA.CD_DOCENTE=1
            AND*/

            CSH.T_DETALHE_AULA.CD_DOCENTE = CSD.T_DOC_TURMA.CD_DOCENTE
            AND
            CSH.T_DETALHE_AULA.CD_TURMA = CSD.T_DOC_TURMA.CD_TURMA
            AND
            CSH.T_DETALHE_AULA.CD_LECTIVO = CSD.T_DOC_TURMA.CD_LECTIVO
            AND
            CSH.T_DETALHE_AULA.CD_PERIODO = CSD.T_DOC_TURMA.CD_DURACAO
            AND
            CSH.T_DETALHE_AULA.CD_DISCIP = CSD.T_DOC_TURMA.CD_DISCIP  
        LEFT OUTER
        JOIN CSD.T_SUMARIOS_AULAS ON CSD.T_SUMARIOS_AULAS.CD_SUMARIO = CSH.T_DETALHE_AULA.CD_SUMARIO
             AND CSD.T_SUMARIOS_AULAS.CD_ESTADO = 1
            /*9238*/
 
WHERE  ((
          CSH.T_DETALHE_AULA.CAMPO_REFERENCIA IS NOT NULL
          AND
          CSD.T_SUMARIOS_AULAS.CD_TIPO_AULA IS NOT NULL
          ) /*Queremos apenas casos em que haja Detalhe e Sumario*/
            OR CSH.T_DETALHE_AULA.CAMPO_REFERENCIA IS NULL ) /*Se nao houver detalhe tambem queremos*/
           
      AND CSD.T_DOC_TURMA.CD_LECTIVO='201516' /*AND CSE.T_TBDISCIP.CD_INSTITUIC=1*/ AND CSD.T_DOC_TURMA.CD_DOCENTE = 20128 ORDER BY CSD.T_DOC_TURMA.CD_LECTIVO;
                       
            20164 anabela
           
              22150 tem um curso a NULL
           

/*
**/
 
SELECT * FROM CSE.T_TURMA WHERE CSE.T_TURMA.CD_TURMA = 'TTPB';
tpb gestao marketing
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
/*Apanhar inscricoes com a turma numa campo diferente da TURMA_T*/
SELECT CSE.T_INSCRI.*
            FROM  CSE.T_INSCRI WHERE CSE.T_INSCRI.CD_TURMA_TP IS NOT NULL AND CSE.T_INSCRI.CD_LECTIVO='201415';

/*DEVOLVE AS FUNCOES DOCENTE QUE PODEM SER ENCONTRADAS NO CAMPO CD_FUNCAO_DOCENTE na T_DOC_TURMA*/
SELECT * FROM CSD.T_TBFUNCAO_DOC;

SELECT * FROM CSD.T_DOC_TURMA WHERE CD_DISCIP='234';