Common situation when designing workflow is that you start to design workflow in SharePoint Designer and then you want to add some code in Visual Studio.
In the following example, I will go through the procedure to create a workflow in SharePoint Designer and then open it and deploy it from Visual Studio.
Let’s start by creating a reusable workflow in SharePoint Designer

Enter the workflow information

and then just implement one step to set the document status to approve:

Next, in order to be able to reuse it in all the sites from site collection in SharePoint, publish the workflow globally:

Save the workflow and then Save it as a template :

You should see the confirmation :

Now, if you go to the Site Library, you will see this:

Save the .wsp localy and then, open Visual Studio and choose to import a workflow:

You can deploy it as a sandbox:

and select your .wsp and all the elements included in the .wsp:

Wait for importation to be completed:

Then deploy the solution:

If you have already saved it in SharePoint Designer, you will have a conflict and see this:

Just select Resolve Automatically to delete the workflow deployed by SharePoint Designer.
From the website, you should now see that the feature corresponding to this workflow is activated:

Then add the workflow on a document library:

Then, start a workflow on a document:

Very Nice Feature ! In one of my next post I will explain how you can change the workflow and redeploy it…