I'm sure there is a way to drastically reduce the maount of code to perform
the below.
Any suggestions ?
'**********************************************************************
sSQL = "SELECT * FROM STRU"
adoRecordset.Open (sSQL), adoConnection
MSFlexGrid1.Row = 0
nColCount = 0
Do While Not adoRecordset.EOF
nColCount = nColCount + 1
MSFlexGrid1.Col = nColCount
MSFlexGrid1.Text = adoRecordset!Name
If adoRecordset!Type = "C" Then
If nColCount = 1 Then
If ob1 Then
sSQLOrder = " ORDER BY " & adoRecordset!Name
If obGroupYes Then
sSQLSelect = adoRecordset!Name
sSQLGroup = " GROUP BY " & adoRecordset!Name
Else
sSQLSelect = adoRecordset!Name
End If
Else
If Not obGroupYes Then
sSQLSelect = adoRecordset!Name
End If
End If
ElseIf nColCount = 2 Then
If ob2 Then
sSQLOrder = " ORDER BY " & adoRecordset!Name
If obGroupYes Then
sSQLSelect = adoRecordset!Name
sSQLGroup = " GROUP BY " & adoRecordset!Name
Else
sSQLSelect = sSQLSelect & "," & adoRecordset!Name
End If
Else
If Not obGroupYes Then
sSQLSelect = sSQLSelect & "," & adoRecordset!Name
End If
End If
ElseIf nColCount = 3 Then
If ob3 Then
sSQLOrder = " ORDER BY " & adoRecordset!Name
If obGroupYes Then
sSQLSelect = adoRecordset!Name
sSQLGroup = " GROUP BY " & adoRecordset!Name
Else
sSQLSelect = sSQLSelect & "," & adoRecordset!Name
End If
Else
If Not obGroupYes Then
sSQLSelect = sSQLSelect & "," & adoRecordset!Name
End If
End If
ElseIf nColCount = 4 Then
If ob4 Then
sSQLOrder = " ORDER BY " & adoRecordset!Name
If obGroupYes Then
sSQLSelect = adoRecordset!Name
sSQLGroup = " GROUP BY " & adoRecordset!Name
Else
sSQLSelect = sSQLSelect & "," & adoRecordset!Name
End If
Else
If Not obGroupYes Then
sSQLSelect = sSQLSelect & "," & adoRecordset!Name
End If
End If
ElseIf nColCount = 5 Then
If ob5 Then
sSQLOrder = " ORDER BY " & adoRecordset!Name
If obGroupYes Then
sSQLSelect = adoRecordset!Name
sSQLGroup = " GROUP BY " & adoRecordset!Name
Else
sSQLSelect = sSQLSelect & "," & adoRecordset!Name
End If
Else
If Not obGroupYes Then
sSQLSelect = sSQLSelect & "," & adoRecordset!Name
End If
End If
ElseIf nColCount = 6 Then
If ob6 Then
sSQLOrder = " ORDER BY " & adoRecordset!Name
If obGroupYes Then
sSQLSelect = adoRecordset!Name
sSQLGroup = " GROUP BY " & adoRecordset!Name
Else
sSQLSelect = sSQLSelect & "," & adoRecordset!Name
End If
Else
If Not obGroupYes Then
sSQLSelect = sSQLSelect & "," & adoRecordset!Name
End If
End If
ElseIf nColCount = 7 Then
If ob7 Then
sSQLOrder = " ORDER BY " & adoRecordset!Name
If obGroupYes Then
sSQLSelect = adoRecordset!Name
sSQLGroup = " GROUP BY " & adoRecordset!Name
Else
sSQLSelect = sSQLSelect & "," & adoRecordset!Name
End If
Else
If Not obGroupYes Then
sSQLSelect = sSQLSelect & "," & adoRecordset!Name
End If
End If
ElseIf nColCount = 8 Then
If ob8 Then
sSQLOrder = " ORDER BY " & adoRecordset!Name
If obGroupYes Then
sSQLSelect = adoRecordset!Name
sSQLGroup = " GROUP BY " & adoRecordset!Name
Else
sSQLSelect = sSQLSelect & "," & adoRecordset!Name
End If
Else
If Not obGroupYes Then
sSQLSelect = sSQLSelect & "," & adoRecordset!Name
End If
End If
End If
Else
If obGroupYes Then
sSQLNumbers = sSQLNumbers & ",sum(" & adoRecordset!Name &
")"
Else
sSQLNumbers = sSQLNumbers & "," & adoRecordset!Name
End If
End If
adoRecordset.MoveNext
Loop
adoRecordset.Close
'**********************************************************************