PDA

Ver la Versión Completa : Parámetro por defecto en función


elrayo76
27-06-2013, 17:03:05
Quería saber como se puede hacer para poner en un parámetro la fecha del día como valor por defecto si no cargan nada en el mismo. Lo que estoy haciendo es lo siguiente:

function GetDateTimeValue(aName: String; aDefault: TDateTime = Now): TDateTime;

El problema es que no se pueden poner cosas como *NOW* en el valor por defecto ya que no admite constantes (ese es el error que da al compilar). Entonces ¿como se puede hacer lo que comento?

Saludos,
El Rayo

egostar
27-06-2013, 17:44:34
Quería saber como se puede hacer para poner en un parámetro la fecha del día como valor por defecto si no cargan nada en el mismo. Lo que estoy haciendo es lo siguiente:

function GetDateTimeValue(aName: String; aDefault: TDateTime = Now): TDateTime;

El problema es que no se pueden poner cosas como *NOW* en el valor por defecto ya que no admite constantes (ese es el error que da al compilar). Entonces ¿como se puede hacer lo que comento?

Saludos,
El Rayo

Hola

Una idea, aunque debe haber algo mejor, seguramente los masters de por aquí pueden darte otras alternativas mejores.



function GetDateTimeValue(aName: String; aDefault: TDateTime = 0): TDateTime;


procedure TForm1.Button1Click(Sender: TObject);
begin
showMessage(datetostr(GetDateTimeValue('Hola')));
showMessage(datetostr(GetDateTimeValue('Hola', strtoDateTime('09/02/2006'))));
end;

function TForm1.GetDateTimeValue(aName: String; aDefault: TDateTime): TDateTime;
begin
if aDefault = 0 then aDefault := Now;
result := ADefault;
end;



Saludos