I've created a custom object with an approval process. The client wants objects that await approval to approve themselves 24 hours (or actually 1 work day) after they are submitted for approval. What would be a good way to implement this?
Well this seems to be a good and valid requirement. Seems like you have write some custom code. This can be achieved by following.
Batch Class : That runs at regular interval and checks that if a record is older than 24hrs, approve the same. Here is ecample of approval of recording using apex http://www.salesforce.com/us/developer/docs/apexcode/Content/apex_process_example.htm
Workflow + triggers : you can use workflow time triggers to update a field in the record, then use trigger to identify the record and process the approval request.
We (Lightside Apps) have just released an App on the Appexchange that would help with this. 'Power Tools' is a collection of useful tools for Salesforce Admins and Developers and includes an 'Approval Automation' tool. This will allow you either Approve, Recall or Reject at an Approval Process Step after a nominated period.
For more information on Approval Automation (and the other components), please have a look at the documentation on our website here: http://www.lightsideapps.com/documentation/approvals/index.html
You can download the App with a free 30 day trial on the App Exchange here: https://appexchange.salesforce.com/listingDetail?listingId=a0N3A00000EFoy9UAD