Public Sub LoadTblToCbx(inputTable As ITable, inputFieldName As String, cbxInput As System.Windows.Forms.ComboBox) ' Create the query filter. Dim queryFilter As IQueryFilter2 = New QueryFilter ' Select the fields to be returned queryFilter.SubFields = inputFieldName ' Set the filter to return only searchable queryFilter.WhereClause = """IsSearchable"" = 'Y'" ' Use the PostfixClause to sort ascending Dim queryFilterDef As IQueryFilterDefinition2 = CType(queryFilter, IQueryFilterDefinition2) queryFilterDef.PostfixClause = "ORDER BY ""SortSequence""" ' Output the returned feature class name. Dim fieldIndex As Integer = inputTable.FindField(inputFieldName) Dim cursor As ICursor = inputTable.Search(queryFilter, True) Dim row As IRow = cursor.NextRow() While Not row Is Nothing Dim field As String = Convert.ToString(row.Value(fieldIndex)) cbxInput.Items.Add(field) row = cursor.NextRow() End While Marshal.FinalReleaseComObject(cursor) End Sub
Solved! Go to Solution.
' Select the fields to be returned queryFilter.SubFields = inputFieldName & ", SortSequence" ' Set the filter to return only searchable queryFilter.WhereClause = """IsSearchable"" = 'Y'" ' Use the PostfixClause to sort ascending Dim queryFilterDef As IQueryFilterDefinition2 = CType(queryFilter, IQueryFilterDefinition2) queryFilterDef.PostfixClause = "ORDER BY SortSequence"
[Visual Basic 6.0]'this is an example of using the PostfixClause property to append a Order By clause to the query Dim pQueryFilter As IQueryFilterSet pQueryFilter = New QueryFilterpQueryFilter.SubFields = "FULLNAME"pQueryFilter.WhereClause = "OBJECTID > 10" Dim pQueryFilterDefinition As IQueryFilterDefinitionSet pQueryFilterDefinition = pQueryFilterpQueryFilterDefinition.PostFixClause = "ORDER BY FULLNAME" Dim pFeatureCursor As IFeatureCursorSet pFeatureCursor = pFeatureClass.Search(pQueryFilter, True) Dim codeix As Longcodeix = pFeatureCursor.FindField("FULLNAME") Dim pFeature As IFeatureSet pFeature = pFeatureCursor.NextFeature While Not pFeature Is Nothing MsgBox pFeature.Value(codeix) Set pFeature = pFeatureCursor.NextFeatureWend
Do filegeodatabase support the ORDER BY function? They didn't used to in ArcGIS 9 - not sure whether they do or not in 10.
' Select the fields to be returned queryFilter.SubFields = inputFieldName & ", SortSequence" ' Set the filter to return only searchable queryFilter.WhereClause = """IsSearchable"" = 'Y'" ' Use the PostfixClause to sort ascending Dim queryFilterDef As IQueryFilterDefinition2 = CType(queryFilter, IQueryFilterDefinition2) queryFilterDef.PostfixClause = "ORDER BY SortSequence"
ORDER BY is supported by File Geodatabase at ArcGIS 10.0. You must include the sort field(s) in the field list.