diff -uNrp trunk_r13332.orig/src/zabbix_server/timer/timer.c trunk_r13332/src/zabbix_server/timer/timer.c
--- trunk_r13332.orig/src/zabbix_server/timer/timer.c	2010-07-18 02:05:15.000000000 +0900
+++ trunk_r13332/src/zabbix_server/timer/timer.c	2010-07-21 20:10:00.000000000 +0900
@@ -40,12 +40,13 @@ static void	process_time_functions()
 
 	zbx_setproctitle("timer [updating triggers]");
 
-	result = DBselect("select distinct %s,functions f where h.hostid=i.hostid and h.status=%d"
-			" and i.status=%d and f.function in ('nodata','date','dayofweek','time','now')"
+	result = DBselect("select distinct %s,functions f, triggers t where h.hostid=i.hostid and h.status=%d"
+			" and i.status=%d and f.triggerid=t.triggerid and t.status=%d and f.function in ('nodata','date','dayofweek','time','now')"
 			" and i.itemid=f.itemid and (h.maintenance_status=%d or h.maintenance_type=%d)" DB_NODE,
 			ZBX_SQL_ITEM_SELECT,
 			HOST_STATUS_MONITORED,
 			ITEM_STATUS_ACTIVE,
+			TRIGGER_STATUS_ENABLED,
 			HOST_MAINTENANCE_STATUS_OFF, MAINTENANCE_TYPE_NORMAL,
 			DBnode_local("h.hostid"));
 
