Quick question I hope I am just having a brain cramp...

I have a workflow with a request form and an approval form. One of the controls is a pick list. So the flowdata from the request form contains the selected value. In the approval form, I want the same original values and the selection selected. So I mapped pre-activity the flowdata from the corresponding field of the form using the flowdata.get() method and when the form starts you see the value from the request form appear. So far so good.

Now I added an onload event to save the value, read the data to populate the control with values, then select the saved value. It's selecting a different option, and tracing it shows there is actually no value in the form being returned from field.getValue() or field.getValues().

v = field.getValues();
IDVault.globalQuery(field.getName(), "ACME-Locations", {"CTX":"*"})

I must be going about this the worng way...So how AM I supposed to do this? Please help get my head out from the space between Neptune and Saturn....