Build a SELECT query, apply user permission filters, and iterate the results.
Key Objects Used
ISSelectQueryBuilder
IDataReader
finBL.CurrentUserInformation
Code
Dim dr As IDataReader
Dim sqb As ISSelectQueryBuilder
' Create Query
sqb = finBL.Database.CreateSelectQueryBuilder()
With sqb
.Table = "Account"
.Fields.AddList("AccountId,Name,Description")
' Always apply User permission filters
.SqlWhere.Append(finBL.CurrentUserInformation.FilterAccountSqlWhere)
.OrderByFields.Add("AccountId")
End With' Execute and iterate resultsIf sqb.ExecuteDataReader(dr) ThenDo While dr.Read()
Dim accountId As String = finBL.Database.GetFieldString(dr!AccountId)
Dim name As String = finBL.Database.GetFieldString(dr!Name)
Loop' Always close the DataReader when finished
finBL.Database.DataReaderClose(dr)
End If