We are trying to move from Infopath to nintex. What is the best practise to handle the infopath fields that are not list columns but are used in workflows. Should we promote all fields to columns?
I know two ways to do this. First way is what you already suggested, promote all required InfoPath fields to SharePoint columns to get access from your workflow.
Other way is to use the "Query XML"/"Update XML" action inside your workflow. When using this actions on a library (for InfoPath forms you are normally using a form library) you can configure these actions to use your "current item" as xml source. Afterwards you need to provide the XPath to the field in the InfoPath form. This way you can quite easily query or set some field within your form without having to promote all your InfoPath fields.
Retrieving data ...