Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Справочными называются те таблицы, из которых только выходят связи типа один.






 

Задание 3.1. Создание формы по таблице Банки.

Создать с помощью мастера форму по таблице Банки в столбец. Сохранить с названием Банки. Сделаем управляющие кнопки. В разделе Примечание формы создать кнопки без мастера со следующими названиями (см. рис.), создать список (в свойстве Имя написать ПолеСоСписком), в котором отображаются значения столбца Название (из таблицы Банки), а также создать флажок (в свойстве Имя флажка написать Флажок1) с подписью (см. рис.).

 

 

!!! У всех полей и выпадающих списков изменить свойство Блокировка на ДА.

 

Изменить следующие свойства формы:

Кнопки перехода – Нет

Кнопка закрытия – Нет

Кнопки размеров экрана – Отсутствуют

Изменить следующие свойства флажка:

Значение по умолчанию – 0

 

Обратите внимание, что каждая кнопка в свойстве Имя должна иметь названия без пробелов такие, как: КнопкаНаВерх, КнопкаНаПредыдущую, КнопкаНаСледующую, КнопкаНаПоследнюю, КнопкаДобавить, КнопкаОтменить, КнопкаСохранить, КнопкаНачатьРедактирование, КнопкаУдалить, КнопкаЗакрыть.

Обратите внимание, что поле со списком в примечании формы в свойстве Имя должно иметь название ПолеСоСписком, а элемент флажок в свойстве ИмяФлажок1.

 

Создайте для каждой кнопки в событии Нажатие кнопки новую программу, в которой напишите соответствующий код для каждой кнопки.

Для кнопки КнопкаНаВерх:

DoCmd.GoToRecord,, acFirst

Для кнопки КнопкаНаПредыдущую:

DoCmd.GoToRecord,, acPrevious

 

Для кнопки КнопкаНаСледующую:

DoCmd.GoToRecord,, acNext

 

Для кнопки КнопкаНаПоследнюю:

DoCmd.GoToRecord,, acLast

 

Для кнопки КнопкаДобавить:

If MsgBox(«Добавить запись?», vbYesNo) = vbYes Then

DoCmd.GoToRecord,, acNewRec

Dim i As Integer

For i = 0 To Me.Count - 1

If Me.Controls(i).ControlType = acTextBox Or Me.Controls(i).ControlType = acComboBox Then

Me.Controls(i).Locked = False

End If

If Me.Controls(i).ControlType = acCommandButton And UCase(Me.Controls(i).Name) < > UCase(" КнопкаДобавить") Then

Me.Controls(i).Enabled = False

End If

next

Me.КнопкаСохранить.Enabled = True

Me.КнопкаОтменить.Enabled = True

Else

'действие по добавлению отменено

End If

 

Для кнопки КнопкаОтменить:

Dim i As Integer

For i = 0 To Me.Count - 1

If Me.Controls(i).ControlType = acTextBox Or Me.Controls(i).ControlType = acComboBox Then

Me.Controls(i).Locked = True

End If

If Me.Controls(i).ControlType = acCommandButton Then

Me.Controls(i).Enabled = True

End If

Next

DoCmd.DoMenuItem acFormBar, acEditMenu, acUndo,, acMenuVer70

 

Для кнопки КнопкаСохранить:

Dim i As Integer

For i = 0 To Me.Count - 1

If Me.Controls(i).ControlType = acTextBox Or Me.Controls(i).ControlType = acComboBox Then

Me.Controls(i).Locked = True

End If

If Me.Controls(i).ControlType = acCommandButton Then

Me.Controls(i).Enabled = True

End If

Next

 

DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord,, acMenuVer70

 

Для кнопки КнопкаНачатьРедактирование:

Dim i As Integer

For i = 0 To Me.Count - 1

If Me.Controls(i).ControlType = acTextBox Or Me.Controls(i).ControlType = acComboBox Then

Me.Controls(i).Locked = False

End If

If Me.Controls(i).ControlType = acCommandButton And UCase(Me.Controls(i).Name) < > UCase(" КнопкаНачатьРедактирование") Then

Me.Controls(i).Enabled = False

End If

Next

Me.КнопкаСохранить.Enabled = True

Me.КнопкаОтменить.Enabled = True

 

Для кнопки КнопкаУдалить:

If MsgBox(«Удалить запись?», vbYesNo) = vbYes Then

DoCmd.DoMenuItem acFormBar, acEditMenu, 8,, acMenuVer70

DoCmd.DoMenuItem acFormBar, acEditMenu, 6,, acMenuVer70

Else

‘действие отменено

End if

 

Для кнопки КнопкаЗакрыть:

Dim str As String

str = CStr(Me.Name)

DoCmd.Close acForm, str, acSavePrompt

Для поля ПолеСоСписком в событии Получение фокуса:

Me.ПолеСоСписком.Requery

Для поля ПолеСоСписком в событии После обновления:

DoCmd.GoToRecord,, acFirst

Do While Me.Название < > Me.ПолеСоСписком

DoCmd.GoToRecord,, acNext

Me.Repaint

Loop

Для флажка Флажок1 в событии После обновления:

If Me.Флажок1 = 0 Then

Me.ПолеСоСписком.Locked = True

Else

Me.ПолеСоСписком.Locked = False

End If

 

Задание 3.2 Создание формы по таблице Грузопередатчики.

Откройте форму Банки в режиме конструктора и сохраните как форму с названием Грузопередатчики. Удалите все поля и подписи. Измените следующие свойства формы:

Источник записей – Грузопередатчики

Подпись – Грузопередатчики

 

В область данных из списка полей (в меню Вид – список полей) перенести все поля. Для полей установить свойство:

Блокировка - Да

 

Для ПолеСоСписком заменить свойство Источник строк так, чтобы он брал значения из поля Наименование таблицы Грузопередатчики. Измените событие После обновления у элемента ПолеСоСписком.

Для поля ПолеСоСписком в событии После обновления:

DoCmd.GoToRecord,, acFirst

Do While Me. Наименование < > Me.ПолеСоСписком

DoCmd.GoToRecord,, acNext

Me.Repaint

Loop

 

Задание 3.3. Создание формы по таблице Товары и услуги.

Откройте форму Банки в режиме конструктора и сохраните как форму с названием Товары и услуги. Удалите все поля и подписи. Измените следующие свойства формы:

Источник записей – Товары и услуги

Подпись – Товары и услуги

 

В область данных из списка полей (в меню Вид – список полей) перенести все поля. Для полей установить свойтсво:

Блокировка - Да

 

Для ПолеСоСписком заменить свойство Источник строк так, чтобы он брал значения из поля Наименование товара или услуги таблицы Товары и услуги. Измените событие После обновления у элемента ПолеСоСписком.

Для поля ПолеСоСписком в событии После обновления:

DoCmd.GoToRecord,, acFirst

Do While Me. [Наименование товара или услуги] < > Me.ПолеСоСписком

DoCmd.GoToRecord,, acNext

Me.Repaint

Loop

 

Самостоятельная работа 3. Создание форм ввода/ вывода данных по справочным таблицам. По выданному варианту документа, после построения схемы данных, выберите таблицы типа «справочник первого уровня» (из таких таблиц выходит связь типа «один» и не подходит связей типа «много») и создайте для каждой из них форму с кнопками, код для которых возьмите из примера формы Банки.

 

Задание 4. Создание форм ввода/ вывода данных по одиночным таблицам, которые используют справочную информацию из других таблиц (из справочников первого уровня).

 


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.011 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал