Here’s the scenario – I have a visual studio sequential workflow on a list (not document library) which has a 2 stage approval process. The request was to use the standard OOB approve/reject mechanism rather than tasks, so for the first stage of approval, the approver would select Approve/Reject from a list item. Once the first stage approver approves the item, the item should NOT be approved and live, but still pending and an email sent to the 2nd level approver to make the ultimate decision of making the item live. Once the 2nd stage approver approves the item the item then becomes Approved and Published for all to see.
I created a Visual Studio Sequential Workflow and created separate routes through workflow based on who updated the List Item.