Hi @tmathieson. Using that 'Parameter.Value(docName, paramName)' iLogic snippet can be fairly tricky at times. There is no proper, public documentation about what is required, or how to format either the "docAndParamName" variable in the one version of it, nor the "componentOrDocName" variable in the other version of it. Nor is there any proper documentation about the 'scope' of this snippet (where, or how far it can reach in different situations). When working with an assembly ComponentOccurrence object, you can simply put the ComponentOccurrence.Name value (as seen in the model browser tree) in there as the first input, but when you are working with a 'referenced' document directly, it is more complicated. It is definitely looking for the file's name, without its path, but whether or not it wants to see the file's extension included is questionable. Sometimes it seems that using Document.DisplayName works there, but that is a Read/Write property, and it may, or may not include the file's extension, depending on some settings. I thing it depends on whether or not your PC (Windows Explorer) is set to show file extensions or not, which sucks. Plus, the 'scope' of that snippet seems to include any document that can be found within the ActiveDocument.AllReferencedDocuments collection. However, if this is the first view of any model you have placed into your drawing, then you may have to update the drawing after placing that first view, for the document reference to take root, before calling code to reach into that referenced document to get parameter values from it...just a thought.
So, if you want to avoid the confusion and uncertainty, you could switch from using API code there, instead of trying to use an iLogic shortcut snippet there.
oCurrentValue = oAssemblyDoc.ComponentDefinition.Parameters.Item("SPAN_A").Value
That's what I usually do, when I really need to count on it working the way I planned it to.
Wesley Crihfield

(Not an Autodesk Employee)