Greetings,
I've had to create a custom function to allow for this... the formula below calculates for British Summer Time so you might have to a variable or 2. An explanation is included.
------------------
Function (NumberVar UnixDate);
//Converts Unix number to date.
DateTimeVar UnixDt:= DateAdd("s",UnixDate,DateTime(1970,01,01,00,00,00));
//BST presumed to be from the last Sunday in March @ 01:00 until the last Sunday in October @ 01:00.
//Spring Forward - Fall Back
//Calculates the Start of BST in UnixDt year.
Datevar LastDayMar:=Date(Year(UnixDt),04,01)-1;
DateVar BSTStartDt:=If DayofWeek(LastDayMar)<>1 then LastDayMar-(DayOfWeek(LastDayMar)-1) else LastDayMar;
DateTimeVar BSTStart:=DateTime(Year(UnixDt),03,Day(BSTStartDt),02,00,00);
//Calculates the End of BST in UnixDt year.
Datevar LastDayOct:=Date(Year(UnixDt),11,01)-1;
DateVar BSTEndDt:=If DayofWeek(LastDayOct)<>1 then LastDayOct-(DayOfWeek(LastDayOct)-1) else LastDayOct;
DateTimeVar BSTEnd:=DateTime(Year(UnixDt),10,Day(BSTEndDt),00,00,00);
//Returns DateTime depending on BST.
If UnixDt in BSTStart to BSTEnd then DateAdd('h',1,UnixDt) else UnixDt;
//BST Date checks for future reference.
//2000 Sun 26/03/2000 01:00 Sun 29/10/2000 01:00
//2001 Sun 25/03/2001 01:00 Sun 28/10/2001 01:00
//2002 Sun 31/03/2002 01:00 Sun 27/10/2002 01:00
//2003 Sun 30/03/2003 01:00 Sun 26/10/2003 01:00
//2004 Sun 28/03/2004 01:00 Sun 31/10/2004 01:00
//2005 Sun 27/03/2005 01:00 Sun 30/10/2005 01:00
//2006 Sun 26/03/2006 01:00 Sun 29/10/2006 01:00