Estou lutando para fazer um relatório no DataReport do VB6 funcionar como quero, porém não vai...
o código é o seguinte:
Set connSIGA2 = New Connection
With connSIGA2
.CursorLocation = adUseClient
.Open "PROVIDER=MSDataShape;Data PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\db\escola.mdb" & ";"
End With
Set rsSIGA = New Recordset
Dim strSQL As String
'define o comando SHAPE
' TESTE
strSQL = "SHAPE { "
strSQL = strSQL & "SELECT tb_matricula.*, "
strSQL = strSQL & " tb_matricula.numero as NumeroAluno,"
strSQL = strSQL & " tb_aluno.nome_aluno as NomeAluno,"
strSQL = strSQL & " tb_turma.turma as NomeTurma, "
strSQL = strSQL & " tb_turma.turno as TurmaTurno, "
strSQL = strSQL & " tb_serie.serie as NomeSerie, "
strSQL = strSQL & " tb_graus.descricao as NomeGrau "
strSQL = strSQL & " FROM"
strSQL = strSQL & " ((((tb_matricula INNER JOIN tb_aluno ON tb_matricula.id_aluno = tb_aluno.id_aluno)"
strSQL = strSQL & " INNER JOIN tb_turma ON tb_matricula.id_turma = tb_turma.id_turma)"
strSQL = strSQL & " INNER JOIN tb_serie ON tb_turma.serie = tb_serie.id_serie) "
strSQL = strSQL & " INNER JOIN tb_graus ON tb_serie.grau = tb_graus.id_grau) "
strSQL = strSQL & " WHERE tb_matricula.id_turma = " & turma.ItemData(turma.ListIndex)
strSQL = strSQL & " ORDER BY tb_turma.turma asc, tb_matricula.numero asc "
strSQL = strSQL & "} AS Turmas "
strSQL = strSQL & "APPEND ({ "
strSQL = strSQL & "SELECT tb_notas.*, tb_disciplina.* From (tb_notas "
strSQL = strSQL & "INNER JOIN tb_disciplina ON tb_notas.id_disciplina = tb_disciplina.id_disciplina) "
'' strSQL = strSQL & "SELECT tb_disciplina.*, tb_notas.* From (tb_notas "
'' strSQL = strSQL & "right JOIN tb_disciplina ON tb_notas.id_disciplina = tb_disciplina.id_disciplina) "
'' 'strSQL = strSQL & "INNER JOIN tb_aluno ON tb_notas.id_aluno = tb_aluno.id_aluno) "
strSQL = strSQL & "} AS Alunos "
'' strSQL = strSQL & "RELATE 'id_serie' TO 'serie' "
strSQL = strSQL & "RELATE 'id_aluno' TO 'id_aluno' "
strSQL = strSQL & ") AS Alunos "
'strSQL = strSQL & ")"
rsSIGA.Open strSQL, connSIGA2, adOpenForwardOnly
Set boletimG.DataSource = rsSIGA
boletimG.Show vbModal
É um boletim escolar.
O comando PAI seleciona os dados que montam o cabeçalho do relatório, o comando FILHO recupera as notas lançadas na tabela tb_notas.
O relacionamento entre os dois comando pode variar... de SERIE para ID_ALUNO mas em menhum dos casos deu certo.
Se eu coloco por série o relacionamento, ele recupera todas as disciplinas que preciso listar... mas não relaciona as notas ao ALUNO do boletim.
Se coloco por ID_ALUNO ele só carrega as disciplinas que tem notas lançadas, até seria o que eu preciso... mas quero que ele lista até mesmo aquelas que não tem nota...
Pergunta
castelo
Ola Amigos.
Estou lutando para fazer um relatório no DataReport do VB6 funcionar como quero, porém não vai...
o código é o seguinte:
É um boletim escolar.
O comando PAI seleciona os dados que montam o cabeçalho do relatório, o comando FILHO recupera as notas lançadas na tabela tb_notas.
O relacionamento entre os dois comando pode variar... de SERIE para ID_ALUNO mas em menhum dos casos deu certo.
Se eu coloco por série o relacionamento, ele recupera todas as disciplinas que preciso listar... mas não relaciona as notas ao ALUNO do boletim.
Se coloco por ID_ALUNO ele só carrega as disciplinas que tem notas lançadas, até seria o que eu preciso... mas quero que ele lista até mesmo aquelas que não tem nota...
Alguma idéia!?
Posso enviar um exemplo por email... aguardo.
email: castelo.jelb@hotmail.com
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.