FALTAS

MARCELOFAZAN 09/07/2010 12:11:41
#346952
pessoal , estou precisando fazer um relatorio dos dias do que o aluno falta

mais pra isso entao

1 - preciso criar a tabela
vamos dizer que as aulas sao de SEGUNDA QUARTA SEXTA ... eu gravaria 3 registros ??

2 - ai na tabela que presenças ....... a pessoa veio segunda sexta ela falto na quarta

3 - fazendo o relatorio como iria mostrar QUARTA no relatorio dessa pessoa

Quais comandos utilizaria melhor se tem comando internos .... nao sei se datedif seria o comando
alguem poderia me opinar a qual caminho

Obrigado
Abs
Marcelo Fazan
TECLA 09/07/2010 12:28:05
#346954
Resposta escolhida
Citação:

1 - preciso criar a tabela
vamos dizer que as aulas sao de SEGUNDA QUARTA SEXTA ... eu gravaria 3 registros ??


Sugiro que armazene um registro com os dados de cada aula (ex. IDAluno, IDDisciplina, IDProfessor, Data, DiaDaSemana).

Citação:

2 - ai na tabela que presenças ....... a pessoa veio segunda sexta ela falto na quarta


Resposta no item 1.

Citação:

3 - fazendo o relatorio como iria mostrar QUARTA no relatorio dessa pessoa


Exemplo simples:
MARCELOFAZAN 09/07/2010 12:48:23
#346955
Olá Tecla Blz !!
certo , tenho a frequencia ja esta gravando
grava id , aluno , data , hora - todos dia marca 2 frequencia a entrada e a saida

já criei um cadastro de modalidade e professor

agora estou fazendo a tela de turmas onde tem até exato momento
id datagravacao professor modalidade turno

só que sao N aulas 3 a 5 dias na semana
penso em criar outra tabela dias estrutura
id DiadaSemana HoraInicio HoraFinal

Segunda 8:00 9:30
Segunda 18:00 19:30
Segunda 19:30 21:00
Quarta 8:00 9:30



entao .... essa tela de turmas colocaria

id datagravacao professor modalidade turno como tabela Pai e colocaria

e colocaria ........ outra tabela de turmasalunos com do codigo da turma + codigo do aluno

e no caso nao consigo enxergar .... o como relacionar esses varios N registros da aula ...... que seria no caso ..... 3 dias da semana
resolveria criando outra tela .... está parte estou poco confuso ......

Obrigado
Abs
Marcelo Fazan












EDERMIR 09/07/2010 21:44:46
#346990
Vou dar meu [Ô]pitaco[Ô].

Desenvolvi um sistema de escola porém SEM o controle de presença (por enquanto).

Existe uma tabela onde a TURMA é cadastrada com (resumidamente) TURMA, DATA_INICIO, DATA_TERMINO
Existe uma tabela onde é cadastrada a GRADE HORÁRIA da turma com TURMA, DATA e HORARIO

Se seu controle se baseia em ENTRADA e SAIDA do estabelecimento, então basta criar uma tabela com TURMA, DATA, ALUNO, ENTRADA e SAIDA.

Se seu controle é por AULA, então crie uma tabela com TURMA, DATA, ALUNO e ID_DE_HORARIO_NA_GRADE_HORARIA.

Não importa qual o tipo de controle: Nesta tabela de PRESENÇA EXCLUA os alunos presentes. Desta forma sua tabela será pequena (espero que seus alunos faltem pouco).

Bom, agora vamos até a sua pergunta: CONTROLAR AS FALTAS.

Se você quer saber quem FALTOU, então estão na tabela. Se não estão na tabela, então estavam presentes. A quantidade de faltas é a quantidade de registros com o ALUNO e TURMA.
MARCELOFAZAN 10/07/2010 13:45:39
#347004
talves um objeto e tudo se resolve facil conseiderando uma variavel de 5 dias para calcular a frquencia

Esse codigo me mostram todos que tem frenquencia .... como faria pra outra condicao considerando 5 dias de contam presença ..... pelas datas 99/99/9999 que ja tenho gravadas na tabela frenquencia

Alguem saberia como resolver facilmente em poucas alteraçoes


If Txt.Text <> [Ô][Ô] Then
If Txt2.Text <> [Ô][Ô] Then
Sql = [Ô]Select * From frequencia Where nome like [ô]%[Ô] & Text1.Text & _
[Ô]%[ô] AND(Data Between #[Ô] & Format(Txt.Text, [Ô]mm/dd/yyyy[Ô]) & _
[Ô]# And #[Ô] & Format(Txt2.Text, [Ô]mm/dd/yyyy[Ô]) & [Ô]#)[Ô]
Else
Sql = [Ô]Select * From Frequencia where nome like [ô]%[Ô] & Text1.Text & [Ô]%[ô][Ô]
End If
Else
Sql = [Ô]Select * From Frequencia where nome like [ô]%[Ô] & Text1.Text & [Ô]%[ô][Ô]
End If


[ô]ISSO ORDENA OS REGISTROS PELO CAMPO CODIGO.
Sql = Sql & [Ô] Order By id [Ô] [ô].
[ô]...........................................
Set rs = conexao.Execute(Sql)
If rs.EOF = False Then
Set RPTFrequencia.DataSource = rs
Select Case Combo2.Text
Case [Ô]VISUALIZAR[Ô]
RPTFrequencia.Show
Case [Ô]IMPRESSORA PADRÃO[Ô]
RPTFrequencia.PrintReport
Case [Ô]SELECIONAR IMPRESSORA[Ô]
RPTFrequencia.PrintReport True
End Select
[ô] Rpt.Orientation = rptOrientLandscape
RPTFrequencia.Show
[ô]Rpt.PrintReport

Else
MsgBox [Ô]Registro não localizado[Ô]
End If



Obrigado
Abs
Marcelo Fazan
MARCELOFAZAN 10/07/2010 14:44:45
#347005
Edermir acho que entendi voce esta dizendo que o usuario 1 vez por mes
precisara cadastrar a grade das aulas ;;;;
ai com essa data curso diff a data da presença ter mais mais ou menos a solucao que preciso
necessariamente entao , vo estruturar a grande sempre gravando corretamente as datas de todas as aulas ??


Abs
Marcelo Fazan
EDERMIR 11/07/2010 10:10:12
#347029
Não entendi a pergunta.

Você controla a presença por DIA ou AULA?

No caso de DIA, guarde a data de ENTRADA e SAIDA do aluno na instituição.
No caso de AULA, guarde a DATA e AULA que o aluno respondeu [Ô]PRESENTE ![Ô]
MARCELOFAZAN 11/07/2010 11:25:50
#347032
Edermir fale mais sobre o que explicou acima

o usuario todo mes precisara gravar os dados da pra criar turmas .... pq a turma é continua
sao 3 trumas de segunda quarta sexta com 3 horarios diferentes


entao preciso criar 2 tabelas

1 turma manha relacionado com tabela horario
1 turma manha 1 Segunda 08:00 9:30
2 Quarta 08:00 9:30
3 Sexta 08:00 9:30
2 turma manha relacionado com tabela horario
2 turma manha 4 Segunda 15:30 17:00
5 Quarta 15:30 17:00

continua mente ???? seria assim a estrutura

mais o problema é como e qual comando depois vo conseguir exemplo
comprar segunda de uma tabela com a segunda da outra tabela e mostrar os diferentes
e me aparecia a quarta seria isso ???

ai vo precisar uma funcao onde eu grave , os mesmo isso se trata comparando duas tabelas
e depois pegando a # e criando o realtorio ?



EDERMIR 12/07/2010 08:04:16
#347054
MARCELOFAZAN.

Entenda bem, estou [Ô]sugerindo[Ô] que você faça desta forma.

Mas vamos lá:

- O aluno se matricula para fazer um curso.
- O aluno é designado para uma turma.
- A turma tem horários específicos.
- Você pode criar uma tabela TODOS OS DIAS com os alunos que estão autorizados a frequentar aquele dia.
- A tabela deve ter as seguintes informações:
-- TURMA
-- DATA
-- HORÁRIO
-- ALUNO

- Quando o aluno comparecer, você deve RETIRAR o aluno da tabela.
- O resultado desta tabela (ao fim do dia) são os alunos que FALATARAM.

Se você preferir, me mande uma Mensagem Privada ou EMAIL que eu tento explicar melhor.
MARCELOFAZAN 12/07/2010 09:23:14
#347060
entendi perfeitamente agora só que entao vo precisar fazer umas nova tabela faltantes
e tambem gerar a apropriacao de frequencia para todos na tabela faltantes
conforme grava na frequencia apaga na faltantes

No caso , gravo na tabela frequencia assim

ssql = [Ô]frequencia[Ô]
Set Tabela = Banco.OpenRecordset(ssql, dbOpenDynaset)
Tabela.AddNew

Tabela([Ô]aluno[Ô]) = Text4.Text
Tabela([Ô]data[Ô]) = Text8.Text
Tabela([Ô]nome[Ô]) = Text2.Text
Tabela([Ô]hora[Ô]) = Text9.Text
Tabela.Update
Tabela.Close

Edermir , mais todo mes vai precisar recriar essa apropriacao para esses alunos o usuarios do sistema

vo por a mao na massa aqui
Vlw


Obrigado Abs
Marcelo Fazan



EDERMIR 12/07/2010 11:10:28
#347078
Lembre-se que não é necessário criar uma tabela permanente dos PRESENTES. A tabela dos AUSENTES é bem menor.
Página 1 de 2 [11 registro(s)]
Tópico encerrado , respostas não são mais permitidas