Hi there,
When using DSL to drive the guided editor, I seem to remember having similar trouble. I opted for writing DSL to generate code which stands alone and re-uses variables. i.e.
[when][]Given a request = $request : Request()
[when][]for a savings account = eval($request.getAccountType().equals("Savings"))
I don't think you can use DSL in decision tables (I'd love to be told that's no longer the case!), but if you need to do that kind of thing, it would probably be worth looking at rule templates instead. They behave a bit like a cross between a decision table and a guided rule.
I have had trouble with DSL-based rules and decision tables where defining an enumeration as a constraint on a field just doesn't get picked up in Guvnor. You need to explicitly define the enumeration within your DSL, like so:
[when][]Given a request for a "{account:ENUM:Account.AccountType}" account = AccountRequest(AccountType=="{account}")