Tutorials > Tutorial 3 - Query Result Fields in C1QueryFrame Control |
In this tutorial, you will learn how to attach two C1QueryFrame controls to a C1Query control. One of them manages filter conditions, the other – result fields, with optional sort and aggregation function. Complete the following steps:
Start a new project.
Place the following controls on the form as shown in the figure: a C1Query control (C1Query1), two C1QueryFrame control (C1QueryFrame1,2), a TabStrip control (add reference to Microsoft Windows Common Controls to the project), Microsoft ADODC control (Adodc1), a Microsoft DataGrid control (DataGrid1) and two command buttons (Command1,2).
Set C1QueryFrame1 control SchemaControl property to C1Query1 and the ContentsType property to 2 – c1qResultFields.
Set C1QueryFrame2 control SchemaControl property to C1Query1 and the ContentsType property to 2 – 2 – c1qConditions.
Set Adodc1 control ConnectionString to Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program Files\Microsoft Visual Studio\VB98\Nwind.mdb;Persist Security Info=False
Specify the schema for C1Query1, repeating steps 3-8 of Tutorial 2 - Using C1Query Schema Designer.
Add the following code managing visibility of the C1QueryFrame controls on TabStrip1:
Example Title |
Copy Code
|
---|---|
Private Sub Form_Load() C1QueryFrame1.Visible = True C1QueryFrame2.Visible = False End Sub Private Sub TabStrip1_Click() C1QueryFrame1.Visible = TabStrip1.SelectedItem.Index = 1 C1QueryFrame2.Visible = TabStrip1.SelectedItem.Index = 2 End Sub |
Add the following code to the buttons’ Click event:
Example Title |
Copy Code
|
---|---|
Private Sub Command1_Click() OK = C1Query1.BuildSQL If OK Then Adodc1.CommandType = adCmdText Adodc1.RecordSource = C1Query1.SQL Adodc1.Refresh Set DataGrid1.DataSource = Adodc1 End If End Sub Private Sub Command2_Click() C1Query1.BuildSQL MsgBox C1Query1.SQL End Sub |
Now you can specify conditions in the Conditions tab, and result fields in the Fields tab. The C1QueryFrame1 control with ContentsType = 2 – c1qResultFields allows the user to specify result fields and, for each field, optional sort and aggregation function.