I have a simple line of Crystal Reports code below:
EffectiveDateTimeString = ToText({Command.EffectiveDate} , "dd-MM-yyyy hh:mm:ss" );
However, when I try to validate the formula, I get a error saying "Too many arguments have been given to this function" with "dd-MM-yyyy hh:mm:ss" selected. Command.EffectiveDate is the DateTime object. How can I convert this to a string?
Thanks!
You need to use the assignment operator :=
, not the equivalency one =
:
EffectiveDateTimeString := ToText({Command.EffectiveDate} , "dd-MM-yyyy hh:mm:ss" );
*edit *
This snippet works as expected:
ToText(CurrentDate + CurrentTime, "dd-MM-yyyy hh:mm:ss");
Ensure that your field is actually returning a date/time, rather than one or the other.
Try this:
EffectiveDateTimeString := CStr(DateTime({Command.EffectiveDate} , "dd/MM/yyyy hh:mm:ss" ));
If {Command.EffectiveDate} is not in the right format, this will ensure that it is indeed DateTime.
If that doesn't work, I just created a simple formula in a sample report of mine, and the below code worked just fine on a DateTime field:
stringVar EffectiveDateTimeString;
EffectiveDateTimeString := CStr({Command.EffectiveDate}, "dd/MM/yyyy hh:mm:ss");
EffectiveDateTimeString