Yes, tagA || tagB is a general expression. Complex code needs an action to perform I believe. I have been working with Crimson 3 and HC Designer for about 8 years and I havn't had to write much complex code other than performing multiple actions. I suck at it. I know very little about it and have tried to understand the basics of c# programming but it doesn't seem to translate to Crimson's c-like programming.
Here is an example of a complex expression that uses a return statement to return an integer from an analog signal:
if (CDE.AnalogSignals.BOILER_ANIMATION.Out==0)
return 0;
if (CDE.AnalogSignals.BOILER_ANIMATION.Out==1)
return 1;
Maybe this would do the same thing for you:
if (CDE.digitalsignals.tagA.out==1 || CDE.digitalsignals.tagB.out==1)
return 1;
else
return 0: