Date#() lets you explain to QlikView how you want a date value to be evaluated.
If I have a date in the following format 2012 04 10 to represent 2012-04-10 it might not be understood automatically as a date by QlikView.
In this instance I can use date#() to show QV how to interpret the value:
date#('2012 04 10', 'YYYY MM DD')
This will attach the proper underlying number to the date value for calculation purposes. (The date number is a counter starting with 1899-12-31 = 1 and then increases with 1 for every full day since.
If you want to reformat the date into another format you can slap a Date() function around the Date#() function. The Date() is there to define the format you want to show the values in, while the Date#() is to define how you want to interpret a value as a date.
For me the pages 856 and further in the Qlikview reference manual was helpful (QV reference manual for version 11 in English...). It explains about date formats and how all interpretation functions work (like date#(), time#() etcetera).
See the above as some further reading....
Is there a concrete issue we can help you with, or explain a concrete date#() application to make it even more clear?