elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  Quitar DateEnvironment y Command de un Datareport
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Quitar DateEnvironment y Command de un Datareport  (Leído 3,737 veces)
hunter18

Desconectado Desconectado

Mensajes: 202


Ver Perfil
Quitar DateEnvironment y Command de un Datareport
« en: 4 Diciembre 2010, 05:54 am »

Tengo creado fisicamente un objeto llamado dteEntornoDatos como lo quito y seguir utilizando mi reporte para ya no depender de él y hacer todo desde codigo?

Dejo el ejemplo del datareport agrupado http://www.megaupload.com/?d=8ZSKELLE
Código:
Option Explicit
Public cn As New Connection

Private Sub Form_Load()
  cn.CursorLocation = adUseClient
  cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\bd_01.mdb;Password=;Persist Security Info=false"
End Sub

Private Sub Command1_Click()
Dim Listado As ADODB.Command
Dim Entorno As dteEntornoDatos
    Set Entorno = New dteEntornoDatos
    Entorno.Listados.ConnectionString = cn.ConnectionString
    Set Listado = Entorno.Commands("command1_grouping")
    Listado.CommandType = adCmdText
    Listado.CommandText = "SHAPE{SELECT P.idprod,P.nomprod,P.idcat,C.nomcat FROM Producto P, Categoria C" & _
" WHERE C.idcat=P.idcat}AS command1 COMPUTE command1 BY 'idcat',nomcat"
    DataReport1.Show
End Sub



« Última modificación: 4 Diciembre 2010, 05:56 am por hunter18 » En línea

karmany
Colaborador
***
Desconectado Desconectado

Mensajes: 1.615


Sueñas que sueñas


Ver Perfil WWW
Re: Quitar DateEnvironment y Command de un Datareport
« Respuesta #1 en: 4 Diciembre 2010, 10:15 am »

Para no depender de un DateEnvironment yo lo hago así.
1º- Creo mi Datareport como yo quiero y no asigno enlace a ningún campo.

Seguidamente desde mi formulario principal, el que trabaja con la base de datos (desde ADO) hago lo siguiente (esto es un copia-pega de un programa mio):
Código
  1. Private Sub generarvistaprevia_Click()
  2.    On Error GoTo hay_error
  3.  
  4.    Dim rs As ADODB.Recordset
  5.    Dim Nombre_seccion As String
  6.  
  7.    ' llamar la función Create_Recordset
  8.    Set rs = Create_Recordset(presentacion) 'Esta función igual no la entiendes, es una función de Luciano
  9. 'para generar un recordset desde un listview... pásala por alto.
  10.  
  11.    If Not rs Is Nothing Then
  12.  
  13.       'Indicar en esta variable el nombre de la sección en la que se encuentran los rptTextBox para cada campo
  14.        Nombre_seccion = "detalle"
  15.  
  16.        'Asignarle a los textbox del datareport, los DataField que corresponden a los nombres de encabezados
  17. '        With DataReport1
  18.        With vpreporte_reportedeejemplo
  19.  
  20.            .Sections(Nombre_seccion).Controls.Item("Texto1").DataField = "CODIGO"
  21.            .Sections(Nombre_seccion).Controls.Item("Texto2").DataField = "INGREDIENTES"
  22.            .Sections(Nombre_seccion).Controls.Item("Texto3").DataField = "CANTIDAD"
  23.            .Sections(Nombre_seccion).Controls.Item("Texto4").DataField = "PRECIO"
  24.            .Sections(Nombre_seccion).Controls.Item("Texto5").DataField = "PESO"
  25.  
  26.            ' cambiar el caption del label Titulo
  27. '            .Sections("Sección4").Controls.item("lbltitulo").Caption = "Informe de formulario: " & Me.Caption
  28.  
  29.            ' Asignarle al datasource el origen de datos, es decir el recordset que devolvió la función Create_Recordset
  30.            Set .DataSource = rs
  31.  
  32.            'Cargar y muestrar el informe
  33.            .Show vbModal
  34.  
  35.            ' Liberar los recursos
  36.            If rs.State = adStateOpen Then rs.Close
  37.            Set rs = Nothing
  38.  
  39.        End With
  40.    End If
  41.  

Espero que te sirva...
Pruébalo.
karmany


« Última modificación: 4 Diciembre 2010, 10:19 am por karmany » En línea

hunter18

Desconectado Desconectado

Mensajes: 202


Ver Perfil
Re: Quitar DateEnvironment y Command de un Datareport
« Respuesta #2 en: 4 Diciembre 2010, 18:12 pm »

Esta bueno el codigo pero yo necesito un reporte agrupado cabecera y detalle por eso utilizo la sentencia SHAPE COMPUTE para agrupar el recordset.
En línea

karmany
Colaborador
***
Desconectado Desconectado

Mensajes: 1.615


Sueñas que sueñas


Ver Perfil WWW
Re: Quitar DateEnvironment y Command de un Datareport
« Respuesta #3 en: 5 Diciembre 2010, 14:26 pm »

Yo lo hacía (CREO) con un control MSHflexGrid u otro similar, no lo recuerdo bien.
Este control te permite acceder a un control de datos ADO y con SHAPE también(te aparecen unos signos + en cada grupo). Después existen muchísimos ejemplos de generar reporte.

De todos modos podrías probar:
http://www.bigresource.com/VB-Shape-Command-Data-Report-sqgDWkMkYL.html#gANrEOmUPL

Este ejemplo con código creo que usa un dataenvironment, pero te puede ayudar.
http://www.squadrosolutions.com/blog/group-reports-in-vb6-using-data-report/

Yo siempre he evitado el uso de la sentencia SHAPE porque me daba muchos problemas a la hora de programar.
Ojalá tengas suerte y nos cuentas cómo lo resolviste, me parece un tema interesante y si lo solucionas seguro que le ponen chincheta.

Un saludo
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
ayuda con datareport
Programación Visual Basic
LICHONGO 0 1,616 Último mensaje 2 Agosto 2005, 02:16 am
por LICHONGO
DAO y DataReport.-
Programación Visual Basic
mdg 2 2,829 Último mensaje 18 Octubre 2007, 22:39 pm
por mdg
Grupos en datareport
Programación Visual Basic
mdg 3 7,883 Último mensaje 30 Octubre 2007, 23:11 pm
por Hans el Topo
Problemas con datareport
Programación Visual Basic
SKL (orignal) 2 3,221 Último mensaje 5 Marzo 2009, 02:31 am
por XcryptOR
vb6 -Error enlazando Command Parent & Command Child en DataReport
Programación Visual Basic
marcosp86 0 1,668 Último mensaje 8 Marzo 2016, 18:39 pm
por marcosp86
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines