USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Historico Escolar no Crystal,,, me ajudem ai...
CarlinhosBrown
ALTO PARAÍSO DE GOIAS
GO - BRASIL
Postada em 09/01/2006 12:15 hs            
galera é o seguinte,,, to fazendo um sistema de controle escolar, entao preciso fazer um relatorio do historico escolar do aluno,,, ai tenho o seguinte: vamos supor q o aluno tem 4 anos q estuda na escola,, entao ele tera vamos supor (5 materias por ano), ele tera essas 5 materias repetidas em 4 anos, o q ocorre, como eu faço pra colocar em um unica linha cada materia e a referencia de 4 anos de notas... assim:
 
portugues
matematica
ciencias
historia
ingles
 
MATERIA            ANO    MEDIA | ANO   MEDIA  |  ANO   MEDIA |  ANO MEDIA  |
portugues         2001     5,6       2002   6,4         2003    6,4       2004   6,0
matematica       2001     5,6       2002   6,4         2003    6,4       2004   6,0
ciencias            2001     5,6       2002   6,4         2003    6,4       2004   6,0
historia             2001     5,6       2002   6,4         2003    6,4       2004   6,0
ingles               2001     5,6       2002   6,4         2003    6,4       2004   6,0
 
 
pois tentei fazer, mas se eu colocar no sessao details o campo da materia ele faz uma lista das materias em sequencia, ou seja ele lista 20 campos da materia,,, acho q deu pra entender o q to querendo falar né.... se alguem tiver uma ideia, me passe ai...
 
valew...
     
Daniel
Pontos: 2843
SÃO PAULO
SP - BRASIL
Postada em 09/01/2006 12:29 hs            
a solução irá depender de como está organizado o seu bd, ou consulta, passa a estrutura ou a sql que voce montou
 

dsmn
     
CarlinhosBrown
ALTO PARAÍSO DE GOIAS
GO - BRASIL
Postada em 09/01/2006 12:33 hs            
pois é,,, ainda nao montei nada de codigo, ja tenho o banco e a tabela, pois fiz comecei a fazer o relatorio q ira pegar os dados no banco né,,, mas ai nao deu certo do jeito q tava pensando, ai parei pra pedir ajuda... pedi uma ideia...
 
msn: carlynhos77@hotmail.com
TÓPICO EDITADO
   
Daniel
Pontos: 2843
SÃO PAULO
SP - BRASIL
Postada em 09/01/2006 12:52 hs            
Acho que a maneira mais fácil é voce montar 2 tabelas
a 1ª seguintes campos:
codigo_aluno, Nome, Materia, media_01, media_02, media_03, media_04, media_05
a  2ª:
ano_01, ano_02, ano_03, ano_04, ano_05
Dessa forma voce poderia construir o seu relatório assim:
 
Cabeçalho:
                                            M É D I A
MATERIA            ANO_01   | ANO_02   |  ANO_03   |  ANO_04  | ANO_05 
 
Detalhe
materia              media_01 | media_02 | mediar_03 | media_04 | media_05
 
 

dsmn
     
Martini
Pontos: 2843 Pontos: 2843
PAROBÉ
RS - BRASIL
Postada em 10/01/2006 13:36 hs         
uma idéa ...
create table #Aluno
 (
  Codigo Integer,
  Nome Varchar(40)
 )
create table #Materia
 (
  Codigo Integer,
  Nome Varchar(40)
 )
create table #DiarioClasse
 (
  Periodo Varchar(4),
  CodTurma Varchar(10),
  CodMateria Integer,
  CodAluno Integer,
  Situacao Varchar(1),
  Media Numeric,
  Faltas Numeric
 )
set nocount on
--alunos
Insert Into #Aluno (Codigo, Nome) Values (1, 'Maria')
Insert Into #Aluno (Codigo, Nome) Values (2, 'Joao')
Insert Into #Aluno (Codigo, Nome) Values (3, 'Pedro')
--matérias
Insert Into #Materia (Codigo, Nome) Values (1, 'portugues')
Insert Into #Materia (Codigo, Nome) Values (2, 'matematica')
Insert Into #Materia (Codigo, Nome) Values (3, 'ciencias')
Insert Into #Materia (Codigo, Nome) Values (4, 'historia')
Insert Into #Materia (Codigo, Nome) Values (5, 'ingles')
--diario classe
Insert Into #DiarioClasse (Periodo, CodTurma, CodMateria, CodAluno, Situacao, Media, Faltas) Values ('2001', '33', 1, 1, 'A', 7, 1)
Insert Into #DiarioClasse (Periodo, CodTurma, CodMateria, CodAluno, Situacao, Media, Faltas) Values ('2002', '43', 1, 1, 'A', 8, 0)
Insert Into #DiarioClasse (Periodo, CodTurma, CodMateria, CodAluno, Situacao, Media, Faltas) Values ('2003', '53', 1, 1, 'A', 7, 2)
Insert Into #DiarioClasse (Periodo, CodTurma, CodMateria, CodAluno, Situacao, Media, Faltas) Values ('2004', '63', 1, 1, 'A', 9, 1)
Insert Into #DiarioClasse (Periodo, CodTurma, CodMateria, CodAluno, Situacao, Media, Faltas) Values ('2001', '33', 2, 1, 'A', 7, 1)
Insert Into #DiarioClasse (Periodo, CodTurma, CodMateria, CodAluno, Situacao, Media, Faltas) Values ('2001', '33', 1, 2, 'A', 7, 1)
 
select * From #Aluno
select * from #Materia
select * from #DiarioClasse
--todas as matérias cursadas pelo aluno 1
select *
from #DiarioClasse
inner join #Aluno on #Aluno.Codigo = #DiarioClasse.CodAluno
inner join #Materia on #Materia.Codigo = #DiarioClasse.CodMateria
where #Aluno.Codigo = 1
drop table #Aluno
drop table #Materia
drop table #DiarioClasse
 
     
Geronimo
Pontos: 2843
JOINVILLE
SC - BRASIL
ENUNCIADA !
Postada em 10/01/2006 16:11 hs            

"O pior inimigo que você poderá encontrar será sempre você mesmo."
   
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2025   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página