1. A method of approving timesheets using an approval workflow engine, the method comprising: generating, with one or more processors associated with one or more computer systems, information configured to display a user interface with at least one or more input fields associated with one or more stages for workflows for processing timesheets, one or more input fields associated with one or more paths in each of the one or more stages, and one or more input fields for each step of each path in each of the one or more stages; receiving, at the one or more computer systems, information via the user interface specifying a set of timesheet approval rules for at least one path of at least one stage of a workflow for processing timesheets, each timesheet approval rule in the set of timesheet approval rules identifying one or more timesheet attributes and specifying one or more conditions that need to be satisfied by timesheet information for the timesheet approval rule to apply to a timesheet represented by the timesheet information; storing the set of timesheet approval rules in a database associated with the one or more computer systems; receiving, at the one or more computer systems, information representing a timesheet, wherein the information representing the timesheet includes a plurality of timesheet attributes and corresponding attribute values; applying, with one or more processors associated with the one or more computer systems, one or more timesheet approval rules in the set of stored timesheet approval rules to the information representing the timesheet to determine whether the one or more timesheet approval rules are satisfied by the corresponding attribute values of the plurality of timesheet attributes; and generating, with the one or more processors associated with the one or more computer systems, one or more approval notifications to one or more approvers or reviewers based on application of the timesheet approval rules.
1. A method of approving timesheets using an approval workflow engine, the method comprising: generating, with one or more processors associated with one or more computer systems, information configured to display a user interface with at least one or more input fields associated with one or more stages for workflows for processing timesheets, one or more input fields associated with one or more paths in each of the one or more stages, and one or more input fields for each step of each path in each of the one or more stages; receiving, at the one or more computer systems, information via the user interface specifying a set of timesheet approval rules for at least one path of at least one stage of a workflow for processing timesheets, each timesheet approval rule in the set of timesheet approval rules identifying one or more timesheet attributes and specifying one or more conditions that need to be satisfied by timesheet information for the timesheet approval rule to apply to a timesheet represented by the timesheet information; storing the set of timesheet approval rules in a database associated with the one or more computer systems; receiving, at the one or more computer systems, information representing a timesheet, wherein the information representing the timesheet includes a plurality of timesheet attributes and corresponding attribute values; applying, with one or more processors associated with the one or more computer systems, one or more timesheet approval rules in the set of stored timesheet approval rules to the information representing the timesheet to determine whether the one or more timesheet approval rules are satisfied by the corresponding attribute values of the plurality of timesheet attributes; and generating, with the one or more processors associated with the one or more computer systems, one or more approval notifications to one or more approvers or reviewers based on application of the timesheet approval rules. 3. The method of claim 1 , further comprising receiving, at the one or more computer systems, a hold indication for all or a portion of the information representing the timesheet from a current approver in a sequence of approvers.