When you have a call on one SIM and you use data on the other, it does not work because only one SIM can be active.
When you use the same SIM for the call and data it will work on 3G/H/4G but not on G/E, that is because the 2G network does not support it.