A ver si te parece bien... yo lo hago en ocasiones...
Cuando creas las conexiones en el dataenviroment y le asignas comandos, puedes generar´sentencias SQL facilmente, al igual que puedes crear variables que se pasaran por referencia al momento de invocar la consulta.
Ejemplo:
Select * From tblTabla1 Where Campo1 = ? and Campo2 <> ? Or Campor2 = ?
Donde los ? hacen referencia a las variables que puedes pasar por referencia a la consulta SQL!
Debes tener en cuenta que al crear la sentencia SQL, en lugar de colocar las variables, debes por obligación colocar un ?, de lo contrario no te funciona... ya luego por el generador de consultas, puedes nombrar cada ? con el nombre de la variabe que quieras.
Para invocar la consulta que alimentará el DataReport desde el formulario sería:
dataenviroment.NomComando (param1, param2, param3, etc...)
Y listo...
Para mayor claridad, cuando crees el "Comando" en el DataEnviroment, haz click en el botón "Priopiedades" y allí encontraras lo que te digo.
Suerte Mellileo