- •15 Февраля 2011 г. Москва вгна
- •1. Основные понятия информационного обеспечения аис
- •2. Задания для выполнения
- •3. Порядок выполнения задания
- •3.1. Формирование базы данных:
- •3.2. Разработка элементов базы данных "Налог"
- •3.2.1. Разработка таблиц базы данных
- •3.2.2. Формирование запросов
- •3.2.3. Разработка начального варианта формы "Платеж-Форма"
- •3.2.4. Разработка начального варианта формы "Статистик_Форма"
- •3.2.5. Разработка окончательного варианта формы "Платеж _Форма"
- •5. Добавление полей для ввода информации из списка:
- •6. Добавление командных кнопок перехода по записям
- •9. Добавление командной кнопки Расчет
- •10.7. Текст программы в окне редактора Visual Basic необходимо скорректировать:
- •3.2.6. Доработка формы Статистик_Форма
- •4. Работа с базой данных "Налог"
- •Литература
3.2.6. Доработка формы Статистик_Форма
1. Ранее при выполнении п. 3.2.4. с помощью Мастера Создание форм была создана форма Статистик_Форма на основе таблицы данных Статистик (рис. 10.24).
2. Доработка формы Статистик_Форма будет включать в себя добавление нового поля СредняяЗадолжн, создание расчетной кнопки Статистика и написание программы для расчетов, производимых с помощью данной формы (рис. 10.53).
Рис. 10.53. Доработанная форма Статистик_Форма в режиме конструктора
3. Добавляем новое поле СредняяЗадолжн в таблицу Статистик. В последствии при проведении расчетов результаты, полученные в поле СредняяЗадолжн формы Статистик_Форма, будут автоматически помещаться в одноименное поле таблицы Статистик.:
– открываем таблицу Статистик в режиме Конструктора (рис. 10.54);
– создаем новое поле СредняяЗадолжн;
–для поля СредняяЗадолжн назначаем Тип данных : Денежный;
– с помощью мыши располагаем поле СредняяЗадолжн между полями СуммаЗадолжн и МинНалогПлатеж;
– сохраняем изменения в таблице Статистик.
Рис. 10.54. Таблица Статистик в режиме Конструктора
4. Добавьте новое поле СредняяЗадолжн в форму Статистик_Форма:
– откройте форму Статистик_Форма в режиме Конструктора;
– сдвиньте вниз существующие поля МинНалогПлатеж, ОрганизцМин, МаксНалогПлатеж, ОрганизацМакс.
– создайте новое поле СредняяЗадолжн между полями СуммаЗадолжн и МинНалогПлатеж (рис. 10.53). Напомним, что вопросы создания нового поля формы рассмотрены ранее в п. 4 раздела 3.2.5;
5. Добавление командной кнопки Статистика
– с помощью кнопки Статистика будут рассчитаны показатели, приведенные в пункте 3.2.4;
– перейдите в режим конструктора формы;
– на Панели элементов (рис. 10.26) с помощью мыши выберите инструмент Кнопка;
– в контекстном меню выберите команду Свойства и в появившемся окне Кнопка (рис. 10.39) в разделе Подпись введите Статистика, а также задайте размеры и положение кнопки в форме;
– поскольку кнопка индивидуальная, да к тому же с помощью ее необходимо производить вычисления в форме Статистик_Форма, то для обеспечения ее работоспособности необходимо сформировать программу, реализующую действие кнопки. Методика разработки расчетных программ подробно изложена в п.6.
6. Создание расчетных формул (программы) для формы Статистик_Форма
– переведите форму Статистик_Форма в режим Конструктора;
– щелчком правой кнопки мыши в поле формы вызовите контекстное меню (рис. 10.43), в поле которого выберите команду "Обработка событий";
– в появившемся диалоговом окне "Построитель" (рис. 10.44) выберите "Программы", и нажмите кнопку "ОК";
– активизируется окно редактора Visual Basic (рис. 10.55);
– в окно редактора Visual Basic (рис. 10.55) необходимо ввести текст программы для расчета показателей платежей, приведенный на рис. 10.56;
Рис. 10.55. Окно редактора Visual Basic
Рис. 10.56. Программа для расчета статистических показателей
– для ускорения выполнения работы текст программы расчета показателей приведен в табл. 10.8. Рекомендуется скопировать с помощью Буфера обмена текст программы из табл. 10.8 окно редактора Visual Basic (рис. 10.55);
Таблица 10.8
Текст программы для расчета показателей формы Статистика
|
Private Sub Кнопка34_click() Dim нпер As Integer, dупл As Integer, n As Integer, m As Integer, i As Integer Dim dsи As Double, sz As Double, sy As Double, sи As Double, k As Integer Dim dsz As Double Dim плат As Double, мах As Double, мин As Double, minOpr As String, махОрг As String Налог.Form_Платеж_Форма.Recordset.FindFirst "НомерПлатежа=" & Str(1) нпер = Налог.Form_Статистик_Форма.НалоговыйПериод.Value 'Выбран налоговый период n = DCount("НомерПлатежа", "Платеж") 'Определение количества записей m = 0: sи = 0: sу = 0: sz = 0: мин = 500000000: мах = 0 For i = 1 To n Налог.Form_Платеж_Форма.Recordset.FindFirst "НомерПлатежа=" & Str(i) dупл = Налог.Form_Платеж_Форма.НалоговыйПериод.Value 'Текущий налоговый период If нпер = dупл Then 'Проверка на совпадение налоговых периодов выбранного с текущим m = m + 1 'Количество платежей в выбранной налоговом периоде sи = sи + Налог.Form_Платеж_Форма.СуммаИсчисленная.Value 'Сумма налога исчисленная за налог пер sу = sу + Налог.Form_Платеж_Форма.СуммаУплаченная.Value 'Сумма налога уплаченная за налог пер sz = sz + Налог.Form_Платеж_Форма.Задолжность.Value 'Сумма задолжности за налог пер If мин > Form_Платеж_Форма.СуммаУплаченная.Value Then 'Определение минимального плате-жа в налог пер мин = Form_Платеж_Форма.СуммаУплаченная.Value minOpг = Form_Платеж_Форма.Организация.Value ' и соответствующей организации End If If мах < Form_Платеж_Форма.СуммаУплаченная.Value Then 'Определение максимального плате-жа в налог пер мах = Form_Платеж_Форма.СуммаУплаченная.Value махОрг = Form_Платеж_Форма.Организация.Value 'и соответствующей организации End If End If Next i Налог.Form_Статистик_Форма.КолНалогПоступл.Value = m 'Отображение расчетов в окнах фор-мы Статистик Налог.Form_Статистик_Форма.СуммаНалИсчислен.Value = sи Налог.Form_Статистик_Форма.СуммаНалУплачен.Value = sу Налог.Form_Статистик_Форма.СуммаЗадолжн.Value = sz If m = 0 Then dsz = 0 Else dsz = sz / m 'Во избежании деления на ноль
If m = 0 Then 'при кулевом значении отобранных записей за налог пер МинНалогПлатеж = 0 МаксНалогПлатеж = 0 СредняяЗадолжн = 0 Else МинНалогПлатеж = мин: ОрганизацМин = minOpг МаксНалогПлатеж = мах: ОрганизацМакс = махОрг СредняяЗадолжн = dsz End If End Sub |
|
– текст программы в окне редактора Visual Basic необходимо скорректировать: номер кнопки 34 в Вашем случае будет другим. Он соответствует командной кнопке Статистика, созданной в п. 5. Для уточнения номера надписи смотрите замечание к п. 6.6;
– перейдите в режим таблицы формы и, нажав на кнопку Статистика, убедитесь в ее работоспособности. В соответствующих полях формы Статистик_Форма должны появится расчетные данные (рис. 10.57).
Рис. 10.57. Окно формы Статистик_Форма в режиме таблицы с расчетными данными