RadDataFilter cannot simply "create SQL on the fly". What exact SQL should it create? For which database out of the possible hundreds of different databases that exist in the world should it create it? For which specific version of this database should it create it? I hope you get my point.
That is what LINQ Providers were invented for. In your .NET code you have a LINQ query and it stays the same no matter what the data base is. The LINQ provider is the one that knows how to translate this querty to SQL Server 2008, Oracle 11g, your XML DB, you name it.
But since you can't use any of these things, here is what you will need to do.
All the information that RadDataFilter has gathered from the user is stored in its FilterDescriptors property. Use your debugger to examine what is inside. You would have to read the information stored in RadDataFilter.FilterDescriptors, and then somehow construct your SQL query, which only you know how to construct, since only you know what your database expects. That's it.
That's what LINQ-to-SQL and LINQ-to-Entities is for, but if you really want to do everything by hand, then this is your call.
All the best,
the Telerik team