Sometimes the method doesn’t populate the dataset, or only partially does so (e.g. it only includes modified rows). Even more infuriating is that some methods populate the dataset on pre proc, but not post proc (or vice versa).
You can run BL Tester or REST Swagger to check the specific method you’re trying too use to see what exactly is happening. Workarounds vary based on what datapoints you have available.
Generally, using the method parameters (instead of the DS) is more reliable. PartNum looks like it’s available for this method and you can grab Company from the Session.
You can either right click in the Editor window or (depending on the exact widget) see all parameters and other objects in the tree menu on the left side of the window.
There may be some differences since you’re on a newer version. The gist of what I’m saying is that you have access to other objects within a BPM than just DS.
Question: are you intentionally trying to throw an error on null results? It’s not going to like you trying to assign “@@@” to an integer.
The interface doesn’t work correctly as far as I know when referencing fields inside of datasets. “dsOrderDtlRow” is not really available in code, you have to build it. Something like: