Hi Kvietinis,
I've run across this particular problem a number of times, and it can be very frustrating to solve. When using the Reflection.CreateObject with a providerType = "Data", DNN will construct the fully qualified object in a very specific manner. In my experience, it is here that the problem occurs. Look at the CreateObject overload in Reflection.vb at about line 162 for some details on how this fully qualified object name is constructed.
If I were you, I would add some debugging code before the CreateObject call to ensure that things are happening as you expect. Something like:
object test = Framework.Reflection.CreateObject("data", "DotNetNuke.Modules.xx", ""));
HttpContext.Current.Response.Write test.GetType().Name;
HttpContext.Current.Response.Write test.GetType().BaseType.Name;
HttpContext.Current.Response.End
I'd use this code to ensure (a) that an object is actually created, and (b) that it actually derives from DataProvider.
Hope this gets you started.
Brandon