• Jueves 14 de Noviembre de 2024, 23:08

Autor Tema:  Re: DATAREPORTS (ES URGENTE)  (Leído 1992 veces)

PNC

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Re: DATAREPORTS (ES URGENTE)
« en: Miércoles 31 de Julio de 2002, 01:06 »
0
Hola. Quisiera que si alguien me puede ayudar en lo siguiente:
YO QUIERO  que mi progrma imprima los carnets de los afiliados a una o. social
Yo diseñe el carnet en el Datreport en la seccion detalle, pues no necesito ni encabezado ni pie de pagina. >Hice el diseño de uno solo Despues en un formulario coloco como parametros desde y hasta que afiliado quiero que me imprima los carnets. O sa desde el 1 hasta el 3 o dede el 3 hasta el 5 , etc. Para cual extraigo los datos de una tabla de la BD llamada afiliados que tiene los sig datos:
nroafiliado. apellido y nombre. docu. dire. gruposanguineo. . etc
Para esto utilizo la sig instruccion:
reg.open "select * from afiliados where nroafiliado between nroaf1 and nroafi2"
set report.datasource = reg
with reporte
.section("detalle").controls("txtnroafil").datafield("nroafiliado")
.section("detalle").controls("txtapellnom").datafield("apellnomb")
...
.
.
.show
end with

De esta forma y con el diseño de un solo carnets en el datareport. Cuando mando a visualizacion preliminar. para ver que me salddra en la impresion. Los carnets me salen en la hoja uno debajo del otro. Pero eso es lo que yo no quiero . quiero me salgan en 2 columans.Poorque el carnet es chiquito de modo que me permite imprimir 2 carnets por linea horizontal en 2 columnas.
En cambio si deseño 2 carnets en el datareport si mando a imprimir por ejemplo del afiliado 1 al 4, lo que me hace es repetirme el mismo carnets con los datos y todos en ambas columnas , de una misma linea horiz.   Y el siguiente carnets o sea del afiliados 2 me imprime abajo y nuevamente hace lo mismo O sea asi                                -------------
                                       1         1
                                       2         2
                                       3         3
                                    -------------

supuestamente estos son los carnets  en la hoja           y yo los quiero asi                                 ---------
                                       1      2
                                       3      4
                                       --------

buahbuah! que tengo que hacer. O soy una burra. o esto es mas complicado de lo que me imaginaba. Ya  invente de todo y no sale.
Bueno , por favor ayudenme. o si me aconsejan a alguien a quien le vaya a llorar
Gracias por TODO
Patricia

Jaume

  • Miembro MUY activo
  • ***
  • Mensajes: 151
    • Ver Perfil
DATAREPORTS (ES URGENTE)
« Respuesta #1 en: Miércoles 31 de Julio de 2002, 11:11 »
0
Debes tener en cuenta que cada campo que insertes en el disenyo, hace referencia a un registro de la base de datos en concreto, me explico, por muchos campos que pongas, por muchos "carnets" que diseñes en la misma hoja, todos esos campos seguirán haciendo referencia al mismo registro de la base de datos, de ahí que te salgan los datos repetidos.

Si quieres hacerlo con el datareport deberías crearte dos dataenvironments, uno para cada carnet, y enlazar los campos de cada carnet al dataenvironment que le corresponda. Un poco complejo

Para hacer esto yo consideraría la posibilidad de realizar este listado mediante Crystal Reports. Este te permite realizar subinformes dentro del mismo informe, por lo que podrías poner dos diseños de carnets que ocuparan el ancho de la hoja. Posteriormente, mediante parámetros, podrías seleccionar los rangos de carnets a imprimir por cada subinforme.

Puede que todo esto te suene a chino si no has usado nunca Crystal, pero es que pides algo difícil

Saludos