Читайте также:
|
|
Вид пользовательского интерфейса приложения представлен на рисунках 23 и 24.
Рис. 23. Форма приложения для формирования списка товаров заданного типа
Элементы Label на форме используются для размещения комментариев.
Для ввода значений дат отчетного периода используются элементы управления MaskedEdit с именами Text1 и Text2, у которых значение свойства Mask равно “##.##.####”.
Элементы Frame (имя Frame1) и OptionButton (имена Option1 и Option2) необходимы для выбора соответствующей хранимой процедуры получения и отображения данных. Выполнение соответствующей хранимой процедуры осуществляется по нажатию на командную кнопку с именем Command1. В приложении используются хранимые процедуры, описанные в разделе 3.4.
Для отображения и корректировки данных из таблицы «Тип Товара» (Type_goods) применяются элементы Adodc с именем Adodc1 и DataGrid с именем DataGrid1. Для элемента DataGrid1 заданы следующие значения свойств: DataSourse=Adodc1, AllowAddNew=true, AllowDelete =true, AllowUpdate.=true. Установка значений необходимых свойств элементов Adodc и имен колонок элемента DataGrid1 осуществляется графическим способом, который рассмотрим в разделе 4.3.3.
Рис. 24. Форма приложения для расчета прибыли
Для отображения результатов выполнения хранимых процедур применяются элементы Adodc с именем Adodc4 и DataGrid с именем DataGrid4. Для элемента DataGrid4 заданы следующие значения свойств: DataSourse=Adodc4, AllowAddNew=false, AllowDelete=false, AllowUpdate.=false.Установка значений свойств Caption, ConnectionString, RecordSourceэлемента Adodc4 осуществляется динамически при функционировании приложения, листинг которого приведен в примере 4.2.
Элемент TextBox с именем Text3 используется для отображения количества записей в элементе DataGrid4.
При загрузке формы приложения запускается на выполнение хранимая процедура формирования списка товаров для заданного вида товаров.
Пример 4.2. Исходный текст (листинг) приложения «Реализация товаров»
Option Explicit
Dim nam_par As String
Private Sub Option1_Click()
Text1.Visible = False: Text2.Visible = False
Label1.Visible = False: Label2.Visible = False
End Sub
Private Sub Option2_Click()
Text1.Visible = True: Text2.Visible = True
Label1.Visible = True: Label2.Visible = True
End Sub
Private Sub DataGrid1_BeforeColEdit(ByVal ColIndex As Integer,
ByVal KeyAscii As Integer, Cancel As Integer)
If ColIndex = 0 Then Cancel = True
End Sub
Private Sub Command1_Click()
Dim dat_b As String
Dim dat_e As String
If Option1.Value Then
'выполнение хранимой процедуры с параметрами: вид товара
Adodc4.Caption = "Процедура: proc_goods (тип тов- параметр)"
If Adodc1.Recordset.RecordCount > 0 Then
nam_par = Adodc1.Recordset.Fields(1).Value 'название вида товара
Adodc4.ConnectionString = "Provider=SQLOLEDB.1;Password=pass1;”+ _
“Persist Security Info=True;User ID=student;”+ _
“Initial Catalog=realization of goods;Data Source=SERVERX"
Adodc4.RecordSource = "EXEC proc_goods '" + nam_par + "'"
Adodc4.Refresh
Text3.Text = CStr(Adodc4.Recordset.RecordCount)
End If
Else
'хранимая процедура с параметрами: вид товара,дата начала, дата конца
Adodc4.Caption="Проц: proc_real_period (тип тов. и дата- параметры)"
If Adodc1.Recordset.RecordCount > 0 Then
nam_par = Adodc1.Recordset.Fields(1).Value 'название вида товара
If IsDate(Text1.Text) = False Then
MsgBox "Дата начала не верна!"
Text1.SetFocus
Exit Sub
End If
If IsDate(Text2.Text) = False Then
MsgBox "Дата окончания не верна!"
Text2.SetFocus
Exit Sub
End If
dat_b = Text1.Text
dat_e = Text2.Text
Adodc4.ConnectionString="Provider=SQLOLEDB.1;”+ _
“Password=pass1;Persist Security Info=True;User ID=student;”+ _
“Initial Catalog=realization of goods;Data Source=SERVERX"
Adodc4.RecordSource="EXEC proc_real_period '" + nam_par + "', '"+ _
dat_b + "', '" + dat_e + "'"
Adodc4.Refresh
Text3.Text = CStr(Adodc4.Recordset.RecordCount)
End If
End If
End Sub
Private Sub Form_Load()
Text1.Text = CStr(Date)
Text2.Text = CStr(Date)
'выполнение хранимой процедуры с параметрами: вид товара
Adodc4.Caption = "Процедура: proc_goods (тип тов.- переменный)"
If Adodc1.Recordset.RecordCount > 0 Then
nam_par = Adodc1.Recordset.Fields(1).Value 'название вида товара
Adodc4.ConnectionString="Provider=SQLOLEDB.1;Password=pass1;”+ _
“Persist Security Info=True;User ID=student;”+ _
“Initial Catalog=realization of goods;Data Source=SERVERX"
Adodc4.RecordSource = "EXEC proc_goods '" + nam_par + "'"
Adodc4.Refresh
Text3.Text = CStr(Adodc4.Recordset.RecordCount)
End If
End Sub
Дата добавления: 2015-07-08; просмотров: 161 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Элемент управления MS ADO DATA Control | | | Графическое формирование значений свойств элементов Adodc и DataGrid |