Continuing my experiments, I now have a working Handcoded CLM which now displays as it should in a Dataview. However this only has hardcoded data loaded into a Datatable in the Method. So the next step is to populate the the DataTable by whatever means from a LoadCollection command.
The IDO Development Guide says that Handcoded CLMs return either a DataTable or IDataReader data type. Visual Studio Intellisense says the results of a LoadCollection request can't be passed directly to a Datatable, but reckons that they can be converted to IDataReader via a CType command.
<IDOMethod(MethodFlags.CustomLoad, "Infobar")>
Public Function GetCoDataSp(ByVal StartingCustNum As String, ByVal EndingCustNum As String _
, ByVal StartingCoNum As String, ByVal EndingCoNum As String, ByRef Infobar As String) As DataTable
Dim MyResultSet As DataTable
Dim IntermediateResults As IDataReader
Dim Request As LoadCollectionRequestData = New LoadCollectionRequestData
Request.IDOName = "SLCos"
Request.PropertyList.SetProperties("CustNum,CoNum,OrderDate,Price,Stat")
Request.OrderBy = "CustNum"
Request.RecordCap = 0
IntermediateResults = CType(Me.Context.Commands.LoadCollection(Request), IDataReader)
MyResultSet = CType(IntermediateResults, DataTable)
Return MyResultSet
End Function
While this compiles and builds OK, it doesn't actually work (which didn't surprise me greatly). When I launch my dataview I see:

Having trawled through the source-code published for V10. The existing Handcoded CLMs written in VB mostly seem to use AppDB connectors to retrieve data via Dynamic SQL or existing SQL Stored Procedures which to my mind flies in the face of Infor's roadmap. The one exception (for the Recommended PAtch Analysis form) reads data from a webservice into the DataTable
The only other method available appears to be to retrieve the LoadCollectionResponseData type and then transfer it row by row to my data table. As an old SQL hack, this seems hideously inefficient and I can't help feeling that I'm missing the blindingly obvious somewhere.
Can anyone advise?
Thanks