DATAREPORT SIN DUPLICADO VB6
Publicado por JOSE (3 intervenciones) el 09/07/2020 22:00:40
hola a todos, prácticamente no se nada de programación pero viendo tutoriales he podido realizar una pequeña aplicación en vb6 muy básica. pero llegue a la parte del reporte y quisiera si me pueden ayudar en lo siguiente:
tengo un datagrid conectado con un adodc y este a la base de datos acces y a la vez un datareport(este ultimo no lo puedo imprimir en horizontal, pero este no es el problema)
al momento de dar en el botón imprimir el código hace lo siguiente:
hasta aca todo bien.
aca, lo que quiero que cuando pase estos datos, aparezcan en la parte de arriba del detalle del reporte, cuando el RQ tiene una sola fila esta bien, pero cuando tiene mas de una no quiero que se repita el numero del RQ y MONEDA la siguiente fila.(adjunto imagen de reporte)
espero sea posible lo que quiero y me puedan ayudar. gracias de antemano

tengo un datagrid conectado con un adodc y este a la base de datos acces y a la vez un datareport(este ultimo no lo puedo imprimir en horizontal, pero este no es el problema)
al momento de dar en el botón imprimir el código hace lo siguiente:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
''conecta la base de datos y carga el datagrid con una selección de rango de fecha
Adodc1.CursorLocation = adUseClient
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & App.Path & "\Basedatoscontrol.mdb"
Adodc1.RecordSource = ("select * from CONTROLRQ where FECHAEMI >= #" & Fd & "# and FECHAEMI <= #" & Fh & "#")
Adodc1.Refresh
Set DataGrid1.DataSource = Adodc1
DataGrid1.Refresh
''aca hace un filtro por el contenido del combo1
If Check1.Value = 0 Then
Adodc1.Recordset.Filter = "ESTADOGENERAL" & " LIKE '*" + Combo1.Text + "*'"
Set DataGrid1.DataSource = Adodc1.Recordset
DataGrid1.Refresh
Else
Adodc1.Recordset.Filter = ""
Set DataGrid1.DataSource = Adodc1.Recordset
DataGrid1.Refresh
End If
' PASA DATOS A DATAREPORT
''Titulo del reporte
With ReporteEstado.Sections("Sección4").Controls
.Item("Etiqueta2").Caption = UCase(Me.Caption)
.Item("Etiqueta8").Caption = TipoReMostrar
.Item("Etiqueta10").Caption = DTPicker1.Value
.Item("Etiqueta11").Caption = DTPicker2.Value
.Item("Etiqueta12").Caption = "USUARIO"
End With
''Detalle del Reporte
Set ReporteEstado.DataSource = Adodc1.Recordset
With ReporteEstado.Sections("Sección1").Controls
.Item("texto1").DataField = "ESTADO"
.Item("texto3").DataField = "ORDENC"
.Item("texto4").DataField = "FECHAEMI"
.Item("texto5").DataField = "MONTORQ"
.Item("texto6").DataField = "PSINIGV"
.Item("texto8").DataField = "AREA"
.Item("texto9").DataField = "EQUIPO"
.Item("texto10").DataField = "PROYECTO"
.Item("texto11").DataField = "ACTIVIDAD"
.Item("texto12").DataField = "DESCRIPCION"
End With
aca, lo que quiero que cuando pase estos datos, aparezcan en la parte de arriba del detalle del reporte, cuando el RQ tiene una sola fila esta bien, pero cuando tiene mas de una no quiero que se repita el numero del RQ y MONEDA la siguiente fila.(adjunto imagen de reporte)
1
2
3
4
ReporteEstado.Sections("Sección1").Controls.Item("texto2").DataField = "RQ"
ReporteEstado.Sections("Sección1").Controls.Item("texto7").DataField = "MONEDA"
ReporteEstado.Show
espero sea posible lo que quiero y me puedan ayudar. gracias de antemano

Valora esta pregunta


0