RELATORIO NO ACTIVREPORTS POR GROUP
Galera tenho uma tabela com vário cadastro seperados por setores, como eu faço um relatório no activreportes onde ele me traga os cadastros classificados pelo o setor? ex:
========SETOR CENTRO ==================
EMPRESA A
EMPRESA B
EMPRESA C
========SETOR ZONA OESTE==============
EMPRESA Z
EMPRASA K
EMPRESA X
ETC........
Já busquei no google mais não achei nada, e ate hoje só fazia relatórios simples..............
por favor alguma luz.......
========SETOR CENTRO ==================
EMPRESA A
EMPRESA B
EMPRESA C
========SETOR ZONA OESTE==============
EMPRESA Z
EMPRASA K
EMPRESA X
ETC........
Já busquei no google mais não achei nada, e ate hoje só fazia relatórios simples..............
por favor alguma luz.......
pelo jeito é difiicil mesmo até agora ninguém me ajudou...
qual versão voce usa? 2.0?
Olha, eu faço isso no ActiveReports 2.0 usando ADO DataControl.
Faça o seguinte: insira no seu relatório um GroupHeader(clica com o botão direito no formulário). Nas opções do objeto, tem um campo chamado DataField, coloca o nome do campo (Setor) como você faz com os textBoxes. Ficaria assim:
[txt-color=#0000f0]------------ReportHeader----------------
------------PageHeader------------------
Aqui o conteúdo do Cabeçalho
------------GroupHeader1---------------
LabelSetor: TextBoxSetor
------------Detail--------------------------
Conteúdo
------------GroupFooter1----------------
Uso aqui para subtotais
------------PageFooter-------------------
------------ReportFooter-----------------[/txt-color]
Faça o seguinte: insira no seu relatório um GroupHeader(clica com o botão direito no formulário). Nas opções do objeto, tem um campo chamado DataField, coloca o nome do campo (Setor) como você faz com os textBoxes. Ficaria assim:
[txt-color=#0000f0]------------ReportHeader----------------
------------PageHeader------------------
Aqui o conteúdo do Cabeçalho
------------GroupHeader1---------------
LabelSetor: TextBoxSetor
------------Detail--------------------------
Conteúdo
------------GroupFooter1----------------
Uso aqui para subtotais
------------PageFooter-------------------
------------ReportFooter-----------------[/txt-color]
Kiko valeu mesmo, cara ta quase 100% só que tem cadastros que ao invés de aparecer uma unica vez o SETOR e as empresas que estao relacionadas, aparece o SETOR duas vezes, cada uma com algumas empresas, e era para aparecer somente o SETOR uma vez com todas as empresas relacionadas.
Você precisa ordenar por setor, faz seu order by assim:: [Ô][txt-color=#0000f0]ORDER BY Setor, Empresa[/txt-color][Ô]
Kiko, agora ficou 100% valew cara, precisando estamos aÃ.....
Kiko reabri o tópico pq percebi agora que mesmo ordenando a select ... por ORDER BY anda está repetindo os setores, estou chamando o relatório assim:
120 SQL = [Ô]SELECT * FROM tblContribuinte ORDER BY RazãoSocial, SETOR[Ô]
130 Set TbCAD = ConexaoADO.Execute(SQL)
140 With AR_LISTA_FECHAMENTO
150 .ADO.ConnectionString = CNN_string
160 .ADO.Recordset = TbCAD
170 .FieldRAZAO.MultiLine = False
180 .FieldRAZAO.CanGrow = False
190 .GROUPINI.DataField = [Ô]SETOR[Ô]
200 .FieldSETORINI.DataField = [Ô]SETOR[Ô]
210 .FieldRAZAO.DataField = [Ô]RazãoSocial[Ô]
220 .FieldLISTA.Text = [Ô]LISTA PARA FECHAMENTO DA FOLHA DE PAGAMENTO REFERENTE À [Ô] & Me.CboMES.Text & [Ô] de [Ô] & Me.CboANOS.Text
230 .Caption = .FieldLISTA.Text
240 .FieldRODAPE.Text = MinhaFrase
250 .Show 1
260 End With
120 SQL = [Ô]SELECT * FROM tblContribuinte ORDER BY RazãoSocial, SETOR[Ô]
130 Set TbCAD = ConexaoADO.Execute(SQL)
140 With AR_LISTA_FECHAMENTO
150 .ADO.ConnectionString = CNN_string
160 .ADO.Recordset = TbCAD
170 .FieldRAZAO.MultiLine = False
180 .FieldRAZAO.CanGrow = False
190 .GROUPINI.DataField = [Ô]SETOR[Ô]
200 .FieldSETORINI.DataField = [Ô]SETOR[Ô]
210 .FieldRAZAO.DataField = [Ô]RazãoSocial[Ô]
220 .FieldLISTA.Text = [Ô]LISTA PARA FECHAMENTO DA FOLHA DE PAGAMENTO REFERENTE À [Ô] & Me.CboMES.Text & [Ô] de [Ô] & Me.CboANOS.Text
230 .Caption = .FieldLISTA.Text
240 .FieldRODAPE.Text = MinhaFrase
250 .Show 1
260 End With
...............up!.................
Tente colocar um DISTINCT:
SELECT DISTINCT * FROM tblContribuinte ORDER BY RazãoSocial, SETOR
SELECT DISTINCT * FROM tblContribuinte ORDER BY RazãoSocial, SETOR
Tópico encerrado , respostas não são mais permitidas