PDA

Ver la Versión Completa : Como puedo hacer esto en fast report...


AFilth
03-02-2006, 09:29:26
Buenos días a todos,

Tengo que hacer lo siguiente para mi programa: Imprimir una lista de códigos etiquetas q llevan código de barras, nombre del producto y precio. Esta lista la genera el usuario seleccionando las referencias y el número de etiquetas de cada producto que quiere imprimir.

Para que quede aún más claro. Si voy a sacar las etiquetas en un papel que contendrá 5(ancho)x5(largo) etiquetas se quiere poder hacer esto:

X X X X X
X X X Y Y
Y Y Z Z A
A A A B C
C C C C C

Donde X,Y,Z,A,B y C son distintas referencias por lo que hay q crear distintos códigos de barras, descripciones y precios para cada una.

Mi idea es guardar eso en una tabla, asociarlo a un TDataSet y pasárselo al fast report pero ahí es donde viene el problema. Como creo yo el MasterData q tire del TDataSet para que me lo haga de esa forma????

Un saludo.

clanmilano
03-02-2006, 12:06:43
Hola, espero poder ayudarte con mi idea.
En primer lugar, yo utilizaria un clientdataset y él le insertaria los registros que queres que se muestren en el reporte.
Si en tu ejemplo, "x" es un dato que el ususrio elige solo una vez de algun lado, y ademas desea que ese dato se muestre mas de una vez en el reporte, insertalo en el clientdataset tantas veces como queres que se muestre. Si lo haces de esta forma, tendrias que utilizar un masterdata para "propagar" los registros insertados y ademas determinar 4 columnas en la hoja. En la primer columna de la izq colocas el textobject enlazado al campo correspondiente del client y deberia surtir el efecto que esperas.
Bueno, cualquier duda comentamela, no problem! ;)

AFilth
03-02-2006, 13:13:44
Mmm, muy buena idea clanmilano!!! No se me había ocurrido meter los datos en el DataSet de la forma:

X
X
X
X
X
Y
Y

en vez de

X 5
Y 2

como había pensado yo en un principio.

Como bien dices, debería funcionar de esa forma ya que el master data tratará los datos uno a uno pasando 5 veces por la X y 2 veces por la Y.

Ahora sólo me queda ver como hacer lo de las 4 columnas q comentas ya que yo siempre he hecho los reports utilizando un MasterData y alguna vez algún DetailData, pero siempre colocando uno único por fila.

En este caso tendré q determinar las columnas (de etiquetas) para q me lo vaya haciendo en el orden:

1 2 3 4
5 6 7 8
9 .......

en lugar de:

1
2
3
4
.
.
.

q es como he trabajado yo siempre.

Un saludo y muchas gracias otra vez por la ayuda.

clanmilano
03-02-2006, 13:29:12
A las columnas las definis en las propiedades de la hoja (doble click). Y solo coloca un masterdata sobre el reporte y el textobject en la 1er columna de la izq, solito los propaga hacia la derecha y abajo como lo explicas con el grafiquito de los nros.
Que bueno que te haya servido, contame cuando lo pruebes y realemente funcione!!

Suerte!!
(yo deje una duda en este foro y nadie la respondio...:confused: , leela a ver si me podes dar una mano con ese tema! Graciasssss)

AFilth
03-02-2006, 13:36:50
Muchas gracias de nuevo, en cuanto lo pruebe este fin de semana te cuento ya que estoy sin ADSL en casa y tengo q escribir desde el curro, pero con la idea q me has dado no creo q haya problema.

Voy a mirar tu post ahora mismo a ver si te puedo echar una mano aunque si es de fast report no controlo demasiado...

Un saludo.

AFilth
06-02-2006, 09:18:36
Bueno, pues al final he conseguido imprimir de esta forma:

1 5 9 .
2 6 . .
3 7 . .
4 8 . .

en lugar de

1 2 3 4
5 6 7 8
9 . . . .

pero bueno, me ha servido perfectamente para lo q keria.

Un saludo y gracias por la ayuda.

dardusso23
15-02-2017, 16:59:02
Hola, Tengo el mismo problema y no entendi bien como llegaste a la solucion.
Lo que quiero es imprimir asi.
147
258
369
Gracias..