If your batch programs use the DB2 TSO attachment, you must use subtasking. Otherwise, the following abend is issued when CICS VT tries to establish a CAF connection:
VID2CAF db2ssid CONNECT ERROR HAS OCCURRED, PLAN=dimname
RETURN CODE = 0008 REASON CODE = 00F30049
This abend is issued because of the conflict between the application program running under the TSO DB2 attach and CICS VT trying to establish a connection to DB2 using CAF.
As an alternative to using subtasking, you might consider converting these programs to use the CAF.