PDA

Ver la Versión Completa : Ayuda con Fastreport


serhasae
05-09-2005, 18:13:30
Hola , estoy usando las fastreport 2.47.

Quiero formatear la salida para que en vez de aparecer 08/2005, aparezca Septiembre / 2005, y mi problema es que pongo en el memo.
El memo se llama mes, no puedo usar el case en las fastreport no se porque.

[mes.text]


begin

m:=[QRecibos."Mes"];
mm:=m[1]+[m2];
aa:=m[3]+m[4]+m[5]+m[6]+m[7];

if (strtoint(mm)=1) then m_escrito:='Enero';

un montonb de ifs para cada mes hasta el 12.

mes.text:=m_escrito+aa;

end

m,mm,aa,m_escrito
¿ deberian de declararse como variable en el Data dictonary ?.
Las asignaciones del mm, aa no me las hace, m si que contiene el valor del mes y del año, a que puede ser debido. Gracias.

Chaja
06-09-2005, 05:39:06
Master: si vas a usar una variable del tipo fecha (Date) dentro del reporte
formatea asi
[FORMATDATETIME('mmmm/yy', DATE)] la 1º es la mascara la 2º la variable,
ahora si bien la mandas como parametro, dentor del Dictionary, si no me equivoco solo acepta cadenas, por lo que tens que mandar la cadena desde la aplicacion ya con el formato deseado.

Espero te sirva

Luis Roldan
Mar del Plata
Argentina

serhasae
06-09-2005, 20:53:04
A ver quiza no me he explicado con claridad, la variable mes es de tipo string, lo que quiero es coger los dos primeros numeros que equivalen al mes y formatear la salida, o sea cogo el 08/2005 y quiero que en el memo del text, en vez de salir 08/2005, salga Agosto/2005, para ello cogo los dos primeros digitos y los quiero almacenar en una variable para comparar y al final poder tener la cadena que asignare a mes.text. Pero tienes que ser desde dentro del script, desde fuera si sabria hacerlo, pero como visualizo el informe quiero cambiar simplemente la visualizacion del mes. pregunto por eso cual es el mes en la tabla Qrecibos para asignarlo al final al memo mes.text. Pero no se si debo de asignar variables o como hacerlo. Gracias.

serhasae
08-09-2005, 19:12:20
No ibas mal encaminado chaja, lo que pasa es que no entendia como funcionaba el formatdatetime en las fastreport, gracias a Gydba, encontre la solucion, aqui la publico por si a alguien le puede sacar de un apuro.


varDate := StrToDate('01/' + [QRecibos."Mes"]);
mmes.Memo := uppercase(FormatDateTime('MMMM/YYYY', varDate));