Ir para conteúdo
Fórum Script Brasil
  • 0

Ajuda com Quebra de Página no DataReport


cfa

Pergunta

Bom dia amigos do Fórum,

estou com um problema na geração de um relatório no DataReport, é o seguinte:

Eu tenho uma lista de alunos (Ex: 100 alunos), eu tenho um form onde o usuário pode distribuir esses nomes em salas (Ex: 5 salas = 20 alunos por sala), até aí beleza, o problema é que preciso imprimir um relatório por sala.

Eu tenho uma tabela chamada "relsort" onde eu embaralho os alunos, depois eu crio uma tabela para cada sala, com a qtde de alunos desejada.

O problema ocorre, quando eu eu faço o for para mandar pro DataReport as informação, cada vez que eu entro no "IF" eu teria que mostrar uma nova página no DataReport, mas isso não está ocorrendo.

SEGUE CÓDIGO:

For x = 0 To 9

If gQtClasses(x) <> 0 Then 'gQtClasse(x) vetor do tipo integer - para armazenar a qtde de alunos em cada sala.

If x = 0 Then

Set db = New ADODB.Connection

db.Execute "drop table listas_provas_" & x & ""

vlSQL = ""

vlSQL = "SELECT * INTO listas_provas_" & x & ""

vlSQL = vlSQL & " FROM relsort "

vlSQL = vlSQL & "ORDER BY sort "

vlSQL = vlSQL & "LIMIT " & gQtClasses(x) & " OFFSET " & x & ""

CNN.Execute vlSQL

Else

Set db = New ADODB.Connection

db.Execute "drop table listas_provas_" & x & ""

vlSQL = ""

vlSQL = "SELECT * INTO listas_provas_" & x & ""

vlSQL = vlSQL & " FROM relsort "

vlSQL = vlSQL & "ORDER BY sort "

vlSQL = vlSQL & "LIMIT " & gQtClasses(x) & " OFFSET " & (gQtClasses(x) * (x)) & ""

CNN.Execute vlSQL

End If

End If

Next x

Set rs = New ADODB.Recordset

vl_sLogoTipo = "logo" & tbPara!id & ".jpg"

With rpt_PresAleatoria

.Caption = "Lista de Presença em Prova - " & vl_sNomeColegio

For x = 0 To 9

If gQtClasses(x) <> 0 Then

rs.Open "select * from listas_provas_" & x & " ORDER BY sort", CNN, adOpenForwardOnly, adLockReadOnly

Set .DataSource = Nothing

.DataMember = ""

Set .DataSource = rs

.Sections("Section4").Controls.Item("lbl_ano").Caption = gAnoAtivo

Set .Sections("Section4").Controls.Item("img_logo").Picture = LoadPicture(App.Path & "\logotipos\" & vl_sLogoTipo)

With .Sections("Section1").Controls

.Item("Text1").DataField = "sort"

.Item("Text2").DataField = "nome"

.Item("Text3").DataField = "classe"

End With

End If

Next x

.Refresh

.Show

End With

Tentei utilizar o comando ForcePageBreak, só que ou ele imprimi uma sala só, eu imprimi um nome em cada página!

Se alguém puder me ajudar agradeço!!!

valeu!

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...