7
votes

Using crystal-report 7

I want to convert the string value to datetime in crystal report

date format are

20120102 (yyyymmdd)
20120105
...

I want to convert the above string to date format like this

expected output

02/01/2012
05/01/2012
...

Need Crystal report formula help

4

4 Answers

13
votes

You could try the DateValue function:

DateValue({myTable.strDate})

otherwise, parse it:

Date({myTable.strDate}[1 to 4], {myTable.strDate}[5 to 6], {myTable.strDate}[7 to 8])
2
votes

Try setting up a formula like:

Date (ToNumber (Right ({myTable.strDate}, 4)),
      ToNumber (Mid ({myTable.strDate}, 5, 2)),
      ToNumber (Left ({myTable.strDate}, 2))
     )
2
votes

The above answer does not work for a typical date that is currently in the string format yyyymmdd. The "left" and "right" need to be swapped.

(date (ToNumber (Left  ({?LD}, 4)),
       ToNumber (Mid   ({?LD}, 5, 2)),
       ToNumber (Right ({?LD}, 2))
      )
2
votes
cDate(ToText(cDate({?StartDate}),"yyyyMMdd")))