and works fine, but each of the values needs to be a boolean. I assume that you named one of the triggers trigg2, since this would explain why and would complain about receiving an object (triggers are objects) rather than a boolean value in the condition. Using the variable name "trigger2Enabled" makes it clearer what it actually means. To be correct, you also need to initialise the value of trigger2Enabled in your init.sqs (or init.sqf) as false; in OFP or ArmA, having trigger2Enabled uninitialised (nil) will just make the trigger condition not work at all (it will be neither true or false) until it is defined, but in ArmA II it would raise an error.
trigger2Enabled = false;
1st trigger:
cond: whatever
on act: trigger2Enabled=true
2nd trigger:
cond: this and trigger2Enabled
on act: whatever