You could use GetValue on SalesOrderNo$ and check that it is not blank. I would say you could also check the oBusObj.EditState property but that may cause errors if it is triggered by an inquiry task that is using SO_SalesOrder_Svc instead of SO_SalesOrder_Bus because the EditState property is not available from the *_Svc classes. You could of course initialize a variable and then use On Error Resume Next to avoid a hard error.
nEditState = 0
On Error Resume Next
nEditState = oBusObj.EditState
On Error GoTo 0
If nEditState <> 0 Then
' Your logic here.
End If
------------------------------
David Speck II
Tennessee Software Solutions
------------------------------