We do automatic approvals via SQL procedure/Clarity job call successfully each week, doing a blanket approval of any submitted timesheet. Here's the code for the SP bit in case it's of any use
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [niku].[AutoApprove]
@P_JOB_RUN_ID NUMERIC,
@P_JOB_USER_ID NUMERIC=1
AS
DECLARE approve_time CURSOR
FOR select prid from
prtimeperiod where
prstart<getdate()-7
DECLARE @au_lname numeric
OPEN approve_time
WHILE 1=1
BEGIN
FETCH approve_time INTO @au_lname
if @@FETCH_STATUS < 0
break
update prtimesheet set prstatus=3 where prtimeperiodid=@au_lname and prstatus=1
END
CLOSE approve_time
DEALLOCATE approve_time
GO
SET ANSI_NULLS OFF
GO
SET QUOTED_IDENTIFIER OFF
GO