Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Only at Qlik Connect! Guest keynote Jesse Cole shares his secrets for daring to be different. Learn More!
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Weekday function is giving the wrong result

Hello,

When using the weekday function I get the wrong result.

For example: for  31-12-2013 the result is Sunday instead of Tuesday.

In the script the following lines are included

  SET DateFormat='DD-MM-YYYY';

  SET TimestampFormat='DD-MM-YYYY h:mm:ss[.fff]';

  SET DayNames='sa;su;mo;tu;we;th;fr';

Some of the formulaes I tried are (where datum is the date field):

  • WeekDay(Datum)
  • date#(WeekDay(Datum),'ddmmyyyy')
  • date#(WeekDay(Datum),'www')
  • date#(WeekDay(Datum),'dd-mm-yyyy')

All giving the same wrong result.

What am I doing wrong?

1 Solution

Accepted Solutions
bbi_mba_76
Partner - Specialist
Partner - Specialist

Hi,

I think you have to set DayNames as

  SET DayNames='mo;tu;we;th;fr;sa;su';

View solution in original post

4 Replies
Not applicable
Author

Since you are already telling it how to interpret the dates with the SET statement, perhaps just try using the date() format function vs the date#() which is an interpreter.  Otherwise I'd say try nesting the date#() function inside of the date() function.

From a technical brief posted on the community...
"It is often practical to nest an interpretation function inside a formatting function, e.g.

Date( Date#( DateField, 'M/D/YY'), 'YYYY-MM-DD') as Date

The inner function ensures that the input text is interpreted correctly – so that a serial

number representing the date is created. The outer function ensures that the serial number

is displayed in a correct date format."
http://community.qlik.com/servlet/JiveServlet/previewBody/3102-102-4-4191/DateFields-TechBrief-US_v2...

bbi_mba_76
Partner - Specialist
Partner - Specialist

Hi,

I think you have to set DayNames as

  SET DayNames='mo;tu;we;th;fr;sa;su';

Not applicable
Author

Thanks, so easy can it be.

sebastiandperei
Specialist
Specialist

The order of the days are bad.

Try:

  SET DayNames='mo;tu;we;th;fr;sa;su';