Hi Ian,
I don't quite understand what you want here, so please explain in more details if possible.
If you need to get a subset of data, simply create a method in the BO with the desired SQL SELECT to get the subset of data you want to have in the BO, then call this method whenever you need it to fill the BO with that data. If this is what you are looking for, here is a sample code:
Public Sub FillByAllTenantAptNumber(ByVal pCity as String)
Using cmd As New SqlCommand()
cmd.CommandText = String.Format("SELECT DISTINCT Apt_No From {0} WHERE City = @City ORDER BY Apt_No", Me.TableNameAndSchema)
cmd.Parameters.AddWithValue("@City", pCity ).SqlDbType = SqlDbType.VarChar
Me.FillDataTable(cmd)
End Using
End Sub