PDA

Ver la Versión Completa : Report Manager


germanuruguay
02-04-2008, 02:24:41
Hola Amigos! tengo una consulta.
En el report manager, como puedo limitar las lineas EN UN REPORTE
Le explico el ejemplo, tengo un reporte que en un a4 entra una especie de orden que lleva una via cliente y otra via empresa.
Entonces necesito limitar la cantidad de lineas inclidas para que el reporte me mantenga ese "diseño", y ademas cuando se pase en limite de lineas que siga en un reporte igual.
cualquier duda que no les quede claro les dejo mi msn.

gfernandez86@gmail.com
Muchas Graciass!!!
Saludos desde URUGUAY :):):)

cjmatador
02-04-2008, 02:37:24
hace bastante tiempo tuve un problema similar lo resolvi usando quick report
debido a que no me limita el numero de registros que usaras pero si limitas el tamaño del reporte y puedes darle un tamaño para que solo te muestre 4 y los proximos te los mostrara identicos de 4 en 4 en varias hojas


saludos

Lepe
02-04-2008, 03:26:42
cjmatador: La versión actual de Reportman (2.7 creo recordar), funciona igual que QuickReport, aunque tiene propiedades para que la banda "auto-crezca" de tamaño.

En ReportMan:
- estableciendo la banda detalle la propiedad para que no crezca de tamaño.
- Hacer la banda lo alto que se requiera, por ejemplo, si deben entrar 3 líneas de detalle nada más, dividir el alto del folio en 3 y hacer de ese mismo alto la banda detalle.

Saludos

germanuruguay
09-04-2008, 20:12:15
gente,, aun no he podido he intentado lo que me han dicho pero no he tenido resultados.. les agrdezco que me ayuden..
Les dejo mi Mali/msn.. para comunicarnos.. un abrazo fuerte

gfernandez86@gmail.com

bismarck_sierra
12-04-2008, 02:04:35
Solución A
1. crea una variable (parametro) Numero de tipo entero, le asignas 0
2. En el evento "Despues imprimir" incrementas la variable Numero en 1 (un contador)
3. En el evento "Comenzar página" pones como condicion, donde "3" es el número de lineas que quieres limitar
MOD(M.NUMERO, 3) = 0

Solución B
Inserta una banda de pie de página y hazla grande de tal manera que solo aparezcan el número de registros que quieras.

Espero te sirvan

Saludos
Bismarck

dandia28
12-04-2008, 15:58:44
Hola bismark, yo tengo el mismo problema que germán...y tu respuesta funciona muy bien, el único problema es que como tengo dos sub-informes y no logro que en la misma hoja salga el primero (con por ejemplo 10 lineas) y a continuación en la misma hoja el segundo informe.

Saludos

bismarck_sierra
14-04-2008, 16:03:41
Que tal dandia28

Si solamente quieres mostrar los 10 primeros registros de tu primer informe, te sugiero que lo limites desde la sentencia SQL, por ejemplo, para firebird que es el que yo utilizo sería SELECT FIRST 10 campo1, campo2 FROM tabla ORDER BY campo1.

Y para que salgan en la misma hoja, asegurate que en las bandas que tengan la propiedad "Comportamiento global" tengan true.

Saludos
Bismarck

dandia28
15-04-2008, 14:20:47
hola bismarck, tal vez me exprese mal....no es que quiera limitar todo el resultado de la consulta a 10 registros.
La idea es asi: tenemos una hoja A4. La misma se reparte en dos, una via para el cliente y otra copia archivo. La idea es imprimir por ejemplo 10 lineas en cada via y que si superan las 10 se haga otra otra hoja A4 igual con los registros que restan tmb. en dos vias. Con tu aporte anterior puedo limitar la cantidad de registros pero no logro que los dos sub-informes queden en la misma hoja a4 si pongo en "Comenzar página" MOD(M.NUMERO, 10) = 0

Gracias por tu ayuda, espero poder resolver el problema.

Daniel :o

bismarck_sierra
17-04-2008, 16:50:12
No veo forma de hacerlo con Report Manager en hojas de imprenta (prediseño), pero si imprimes en hoja blanca, bien podrías imprimir los 10 primeros registros para el cliente, si hay más, relizas un salto de media hoja (por así decirlo) y continuas en la otra mitad, después de que termines de imprimir lo del cliente, empiezas con la misma mecánica para la copia del archivo. No se si esto se pueda aplicar a tu sistema.

Saludos

Lepe
17-04-2008, 20:11:59
Yo uso UN solo subinforme, pongo todos los labels y sus cajitas, y cuando ya lo tengo listo, selecciono todo, copio y pego los 32 labels y 48 cajitas de texto, en el mismo subinforme, y arrastro hacia abajo.... Listo !!! jajajaja, ya tienes las 2 copias :p

En cuanto al tema de pre-impresos, te recomiendo busques en la web de ReportMan el tema de ayuda "Form Filling", que es:
- escaneas la hoja pre-impresa (te fijas en los dpi que lo haces).
- asignas la imagen al fondo del subinforme principal, (teniendo en cuenta los márgenes, si los pones a cero mejor).
- asignas la propiedad dpi en el subinforme, esto es crucial, así haces que la imagen se adapte a tu pantalla y coincida con el papel al imprimir.

Ahora sólo tienes que ir fijándote de la imagen de fondo y dejar las cajas de texto, labels que necesites, etc. Así te sale todo cuadrado al primer intento.

Después tienes una propiedad para ocultar la imagen y que salga:
- solo en tiempo de diseño del informe
- solo en la vista preliminar
- que también lo imprima.

Edito: me parece que no es exactamente lo que quieres.... no sé.

Saludos

dandia28
17-04-2008, 20:44:35
Lepe, gracias por tu respuesta..pero creo que tú estas pensando en una distribución vertical de los campos y en este caso salen en forma horizontal, como si fuera un listado.

saludos, daniel

Gabichu
14-08-2008, 19:57:52
hola a todos.. realmente no estoy segura si debo postear aqui mi duda o crear un nuevo hilo, de todas formas a continuacion expongo mi problema...

En un reporte realizo un calculo que me da como resultado un valor con decimales y necesito redondearlos a un entero... como puedo hacer esto? ya probe con el round pero solo obtengo error de sintaxis.. cualquier ayuda es bienvenida..
gracias

Lepe
17-08-2008, 15:02:31
Tienes la función Int (http://reportman.sourceforge.net/doc/index.html) y la función Round, sería algo así:

mivalorEntero := Int(Round(MiFloat, 1));

El "1" es para que redondee a unidades, si envias 0.1 redondea una décima si envías 0.05 redondea a 5 centésimas.

No lo he probado, pero según la ayuda es así. Suerte!!

Saludos