PDA

Ver la Versión Completa : Modificar un Memo desde una UserFunction en FastReport


fcios
15-08-2007, 07:11:50
Hola, desde dentro de una UserFunction como se modifica el valor de un campo del reporte en FastReport 3

por ejemplo quiero asignar 'Hola pepe' al Memo36

seria algo como
frxReporte.Pages[1].Memo36.Lines.Text:= 'Hola PEPE';
pero esto no funciona

(realmente ejecuto un proceso complejo, ya se que puedo colocar 'Hola Pepe' directamente en el campo Memo)

muchas Gracias

ArdiIIa
15-08-2007, 07:41:21
Hola fcios
No se cuan complejos son esos procesos, en el otro post (http://www.clubdelphi.com/foros/showthread.php?t=46963) ya te han comentado como enlazar de ese modo.
Por otro lado, es un método que yo personalmente nunca he utilizado.

Si se trata de asignar un valor o varios valores en un report de forma externa a él, yo habitualmente utilizo el evento onGetValue, el cual te permite asignar lo que quieras a una variable.

Ejemplo defines un memo y en su interior insertas una varibla [variable_name]
y posteriormente en el evento citado pone el código que te parezca.



procedure TDataModule.frxReportTuReportGetValue(const VarName: String; var Value: Variant);
begin
if VarName = 'variable_name' then
Value := Complejos_Calculos //-----> Desde aquí haces lo que quiereas por código, lo unico que tienes que hacer es devolver un valor...

if VarName = 'Otra_Variable' then
Begin
Value := MasCAlculos()
End;

end;



Espero que te sea de utilidad, porque como te digo, UserFunction no se si será mas práctico que este procedimiento.

Saludos