Populate a Flexgrid With Desired Columns and Filtered Rows

Populate a flexgrid control with specified columns and filtered rows by drawing the control and calling this routine:

 Dim strWhere As StringstrWhere = " WHERE PeopleAddressesID=4502"Call PopulateFlexGrid(Me.MSFGrid, "tblPeopleAddresses", 
strWhere,"PeopleAddressesID", "BuildingName", "City", "State")-------------------------------------------------------------------------------------------------------------------------------------------------------Public Sub PopulateFlexGrid(FlexGridControl As MSFlexGrid,
strTableName AsString, strWHERECriteria As String, ParamArrayColNames()) Dim adoRst As ADODB.Recordset Dim intI As Integer Dim strSQL As String Dim strTab As String Dim adoFld As Field Dim strRow As String '*** Build dynamic SQL *** strSQL = "SELECT * FROM " & strTableName &
strWHERECriteria strTab = Chr(9) 'Tab Set adoRst = New ADODB.Recordset adoRst.Open strSQL, BuildConnectionString(),
adOpenStatic,adLockReadOnly With FlexGridControl .Rows = 2 .Cols = UBound(ColNames) + 2 .FixedCols = 0 .FixedRows = 1 .AllowUserResizing = flexResizeColumns .Row = 0 .Col = 0 '*** Populate Flexgrid heading *** For intI = 0 To UBound(ColNames) For Each adoFld In adoRst.Fields If adoFld.Name = ColNames(intI) Then .Text = adoFld.Name If .Col < .Cols Then .Col = (.Col + 1) End If Next adoFld Next intI .Cols = UBound(ColNames) + 1 '*** Populate Flexgrid row values *** Do Until adoRst.EOF For intI = 0 To UBound(ColNames) strRow = strRow & adoRst.Fields(ColNames(intI))
& strTab Next intI .AddItem strRow strRow = "" 'Initialise adoRst.MoveNext Loop End With adoRst.Close Set adoRst = Nothing Set adoFld = Nothing Set FlexGridControl = Nothing End Sub
Share the Post:
Share on facebook
Share on twitter
Share on linkedin

Overview

Recent Articles: