Visual Basic para Aplicaciones - Data Report

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil

Data Report

Publicado por zzzz (6 intervenciones) el 04/10/2004 03:51:02
Hola! soy yo otra vez, tengo otra duda, tengo una tabla hecha en sql, ya hice el reporte en visual basic pero me muestra todos los registros de la tabla mi duda es: como le hago para que no me muestre todos los registros sino solo los que cumplan con una condición. Use los componentes dataenviroment y datareport, no use sql para generar los reportes con el datareport, ¿debi haber el reporte usando el generador de SQL del datareport para poder hacer eso?
Otra duda como le hago para que me agrupe los datos de una tabla, por ejemplo que en una hoja me muestre las ventas del mes de enero, y si se acaba a la mitad de la hoja, quiero que el siguiente mes me lo muestre al inicio de otra página nueva, no en la que se quedo.
Ah otra duda totalmente diferente al data report.
Para ver mis bases de datos en visual basic uso el componente adodc, mi duda es: con ese componente como puedo establecer relaciones maestro-detalle.
Por favor ayudenme ya que no se mucho de visual basic, yo se hacer todo esto en builder pero la maestra no quiere que lo hagamos en builder, asi que opte por visual basic pero tengo varias dudas.

Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Data Report

Publicado por mike (4 intervenciones) el 05/10/2004 23:09:21
Si tienes una sola condición que nunca cambia puedes hacerlo con el generador SQL, si la condición se puede cambiar, lo que es lo mas común con condiciones debes crearte una o varias variable a la cual asignas el código SQL. Después asignas este código al tu dataenvironment.
(ejemplo: Conection.Commands(1).CommandText = "SHAPE {SELECT ID, Fecha, Hora, Tur1, Tur2, Int1, Int2, Int3, Int4, TAG, HoraIni, Doc, Obs, Sol, Sta, HoraFin, RRHH FROM Info ORDER BY ID} AS General COMPUTE General BY 'Fecha', 'Hora', 'Tur1', 'Tur2', 'Int1', 'Int2', 'Int3', 'Int4'")
la propiedad Commands te exije el indice, todo del shape hasta el order by es lo que quieres mostrar y "as General.....es tu agrupación.
Tu segunda duda solucionas con una agrupación correcta. En el "encabezado del grupo" debes poner las campos de la carpeta "Summary Fields in General_Grouping" de tu data environment, en el Detaille debes poner los campos de la carpeta "Detail fields in General". Debes probar un poco para encontrar la agrupación que te sirve.
Para la tercer duda no te puede decir nada, porque no cacho a que te refieres con relacion maestro detalle.
saludos y suerte
mike

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:Data Report

Publicado por zzzz (6 intervenciones) el 07/10/2004 04:59:25
Hola! tengo otra duda que es commands(1), como le hago para saber que numero es mi comando, en mi dataenviroment tengo como 6 comandos que uso para diferentes reportes. El que quiero usar es el ultimo
tengo mi codigo asi:

Dim Entorno As DataEnvironment1 'Nuestro entorno de datos


'Iniciamos el entorno de datos.
Set Entorno = New DataEnvironment1

Entorno.Boleta.ConnectionString = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=Biblioteca;Data Source=PC0"
'uso bd de sql por eso tengo que poner todo eso



'WHERE folio_p="txtFields(0).Text "
Entorno.Commands(1).CommandText = "SHAPE {SELECT Prestamo.*, Detalle_Prestamo.cve_libro AS Expr1 FROM Prestamo INNER JOIN Detalle_Prestamo ON Prestamo.folio_p = Detalle_Prestamo.folio_p INNER JOIN Libro ON Detalle_Prestamo.cve_libro = Libro.cve_libro ORDER BY Prestamo.folio_p, Detalle_Prestamo.cve_libro} AS BPrestamo COMPUTE BPrestamo BY 'folio_p'"
Boleta.Show
pero me dice que no puedieron encontrar los registros de filas
del origen de datos actual, en el dataenvironment 1 tengo varios comandos para generar varios reportes.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Data Report

Publicado por mike (4 intervenciones) el 07/10/2004 20:04:11
hola,
Commands(1) es el Comando en lo que quieres aplicar el "CommandText". Espero que solamente necesites cambiar el Indice para que te funciona.
mike
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:Data Report

Publicado por zzzz (6 intervenciones) el 08/10/2004 02:54:37
Hola! muchas gracias lo probare, otra duda, no sabes como insertar un salto de página, ya supe agrupar, solo que quiero que por ejemplo me muestre las ventas de enero y luego si se acaba a la mitad de la hoja que con un salto de pagina empiece febrero en otra página.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

gracias

Publicado por zzzz (6 intervenciones) el 08/10/2004 03:23:30
Hola! gracias por decirme que signica command, ya lo modifque y funciono bien, solo que ahora no se donde poner la clausula where para que no me muestre todo el reporte mi codigo es este

DataEnvironment2.Commands(1).CommandText = "SELECT Prestamo.*, Detalle_Prestamo.*, Libro.* FROM Detalle_Prestamo WHERE Detalle_Prestamo.folio_p=" & txtFields(0).Text & "INNER JOIN Libro ON Detalle_Prestamo.cve_libro = Libro.cve_libro INNER JOIN Prestamo ON Detalle_Prestamo.folio_p = Prestamo.folio_p"

Si le quito el WHERE funciona todo bien, y me muestra todos los registros si se lo pongo no me muestra ningun registro. txtFields(0).Text tiene el campo folio_p.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:Data Report

Publicado por zzzz (6 intervenciones) el 07/10/2004 04:39:52
A maestro detalle me refiero con que por ejemplo tengo una tabla factura, y luego una tabla detalle_factura, en adodc1 como se le hace para indicar que la tabla detalle_factura esta relacionada con la tabla facutra. A eso en cualquier base de datos se le llama relacion maestro-detalle
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar