Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Организация ввода данных в базу данных. Организация корректировки базы данныхСодержание книги
Похожие статьи вашей тематики
Поиск на нашем сайте
Пользовательские формы. При построении форм, была выбрана приятная цветовая гамма и учтена выразительность техники, которая способствует работе пользователя. При проектировании форм придерживались следующих принципов: • Экранные формы должны иметь уникальные и информативные заголовки. • Все поля необходимо снабдить надписями. • Курсор по умолчанию, как правило, должен перемещаться слева направо, а затем сверху вниз. • Обязательные элементы должны находиться в верхней части экрана. Элементы на экране необходимо упорядочить по степени важности. • Экранная форма не должна состоять из множества страниц. • Пользователи должны вводить код только один раз и не должны ничего запоминать или записывать при переходе от одной экранной формы к другой. Назначение любой базы данных заключается в получении пользователем базы необходимой ему информации. Кроме того, пользователю должны быть предоставлены возможности пополнения базы данных вновь возникшей информацией и её коррекции в случае изменения тех или иных компонент, хранящихся в базе данных. В Visual FoxPro существует два формата отображения содержимого сущности – в виде таблицы и в виде формы. Формы являются мощным и гибким средством представления информации. Форма позволяет объединять поля в группы по определенным признакам, что облегчает восприятие информации. Она заметно упрощает процесс ввода данных, а также процесс их редактирования. Самый простой вариант формы позволяет вводить данные только в одну таблицу. В разработанной информационной системе примером такой формы может служить формы справочников. Для оптимальной работы пользователя разработано 6 форм для ввода и редактирования данных. Ниже приведены основные формы. Форма «Автомобили клиентов». Данная форма предназначена для добавления, удаления информации о клиентах и их автомобилях в справочник «Автомобили клиентов» (рис.3).
Рис. 3. Форма справочника «Автомобили клиентов» После завершения работы в форме пользователь нажимает кнопку «Выход», программный код которой представлен ниже. При нажатии на кнопку «Выход» появляется окно подтверждения о выходе из формы (рис. 4). Рис. 4. Окно подтверждения выхода Программный код кнопки «Выход»: *Завершаем и выходим, если "ДА" if MESSAGEBOX("Выйти из формы?",4+32+256,"Выход")=6 _screen.activeform.release() else _screen.activeform.refresh() Endif Форма «Клиенты» предназначена для добавления, удаления информации о клиентах в справочник «Клиенты». Программный код кнопок и сами кнопки аналогичны кнопкам, используемых в форме справочника «Автомобили клиентов». Данная форма не показана на рисунке, так как она схожа с формой справочник «Автомобили клиентов», также как и форма «Сотрудники», предназначена для добавления, удаления и информации о сотрудниках в справочник «Сотрудники», форма «Справочник материалов», предназначена для добавления, удаления информации о материалах в справочник «Материалы», форма «Справочник работ», предназначена для добавления, удаления информации о работах в справочник «Работы». Форма «Журнал заказов». Данная форма предназначена для формирования заказов клиентов. При формировании заказа номер заказа генерируется автоматически, чтоб пользователю не приходилось запоминать номер предыдущего заказа. Дата заказа также формируется автоматически, т. е. в поле добавляется текущая дата. Срок окончания пользователь должен корректировать самостоятельно. Далее переходим на вкладку клиенты, где выбираем код клиента, и указываем физическим или юридическим лицом является клиент. Для удобства выбора кода клиента на вкладку помещен элемент Grid (таблица), в которой отображены справочные данные клиентов. На вкладке работы и сотрудники выбираем код работы, которую требуется выполнить, и тут же выбираем исполнителя данной работы. Выбор данных также происходит из элемента Grid. Только после заполнения вышеперечисленных полей можно перейти на вкладку материалы и выбрать требуемые материалы для выбранной работы и указать необходимое количество материала. Заполняя все вышеперечисленные поля, поле «Стоимость заказа» автоматически формирует значение, суммируя стоимость работ и стоимость материалов, умноженное на количество. Форма представлена на рисунке 5. Рис. 5. Форма «Журнал заказов» Программный код кнопки «Добавить» представлен ниже: *проверка поля id_klienta, если оно не пустое IF VAL(thisform.pageframe1.page1.id_klienta.Value)=0 *вывод сообщения «Поле Код клиента незаполненно» MESSAGEBOX("Поле Код клиента незаполненно","Сообщение") *если поле пустое, переключается на вкладку page1 thisform.pageframe1.ActivePage=1 _screen.activeform.Refresh() Else *выбор таблицы zakazi SELECT zakazi *добавление новой записи в таблицу APPEND Blank *добавление значений в таблицу из полей значения формы replace stoimost_zakaza with thisform.stoimost_zakaza.value,; data_zakaza with thisform.data_zakaza.value,; srok_okoncania with thisform.srok_okoncania.value,; id_klienta with VAL(thisform.pageframe1.page1.id_klienta.value),; fio_klienta with thisform.pageframe1.page1.fio_klienta.value,; marka_avto with thisform.pageframe1.page1.marka_avto.value,; tip_zakaz with thisform.pageframe1.page1.tip_zakaz.value,; otmenen WITH 0 *вывод сообщения «Заказ успешно оформлен» MESSAGEBOX("Заказ успешно оформлен","Сообщение") *закрытие формы _screen.activeform.release()
ENDIF
Программный код кнопки «Добавить работу» на вкладке «Работы и сотрудники» выглядит следующим образом:
*выбор таблицы rab_z SELECT rab_z *добавление новой записи в таблицу APPEND Blank *добавление значений в таблицу из полей значения формы replace nomer_z with thisform.nomer_zakaza.value,; kod_raboti with VAL(thisform.pageframe1.page2.combo3.value),; naimen_raboti with thisform.pageframe1.page2.text4.value,; id_sotrudnika with VAL(thisform.pageframe1.page2.combo2.value),; fio_sotrudnika with thisform.pageframe1.page2.text3.value strab=Raboti.Stoimost_raboti *вычисление стоимости работы thisform.Stoimost_zakaza.Value=thisform.Stoimost_zakaza.Value+strab *вывод сообщения «Работа успешно добавлена» MESSAGEBOX("Работа успешно добавлена","Сообщение") *перенос значения поля text4 в поле Caption thisform.pageframe1.page3.Label4.Caption=thisform.pageframe1.page2.text4.value thisform.Refresh() *_screen.activeform.Refresh() Программный код кнопки «Добавить выбранный материал» на вкладке «Материалы» представлен ниже: *выбор таблицы rab_z SELECT rab_z *связывание таблиц по ключевым полям if!eof() go bottom endif kluch_rab=rab_z.id *в переменную temp заносим текущую стоимость заказа temp=thisform.Stoimost_zakaza.Value thisform.Stoimost_zakaza.Value=kluch_rab *выбор таблицы mat_z SELECT mat_z APPEND Blank *добавление значений в таблицу из полей значения формы REPLACE kluch_rab with thisform.Stoimost_zakaza.Value,; kod_materiala with VAL(thisform.pageframe1.page3.kod_materiala.value),; naim_materiala with thisform.pageframe1.page3.naim_materiala.value,; kol_mat with thisform.pageframe1.page3.kol_mat.value,; stoimost_mat with thisform.pageframe1.page3.stoimost_mat.value * добавление в поле Stoimost_zakaza переменную temp thisform.Stoimost_zakaza.Value=temp *выбор стоимости материала из справочников материалов stmat=materiali.stoimost *вычисление стоимости выбранных материалов и отображение стоимости на форме thisform.Stoimost_zakaza.Value=thisform.Stoimost_zakaza.Value+thisform.Pageframe1.Page3.kol_mat.Value*stmat *вывод сообщения «Материал добавлен, выберите следующий при необходимости» MESSAGEBOX("Материал добавлен, выберите следующий при необходимости","Сообщение") thisform.Refresh()
Программный код формы «Заказы»: *выбор таблицы SELECT zakazi *переход к последней записи в таблице if!eof() go bottom endif _screen.activeform.refresh() *запись в переменную номер последнего заказа _per=zakazi.nomer_zakaza _per=_maxim+1 *вычисление номера следующего заказа thisform.nomer_zakaza.value=_per Программный код вкладки «Материалы»: *проверка поля код работы на заполненность IF VAL(thisform.pageframe1.page2.combo3.Value)=0 *вывод сообщения, если поле не заполненно MESSAGEBOX("Поле Код работы незаполненно","Сообщение") thisform.pageframe1.ActivePage=2 _screen.activeform.Refresh() Else *проверка поля код сотрудника на заполенность IF VAL(thisform.pageframe1.page2.combo2.Value)=0 *вывод сообщения если поле не заполенно MESSAGEBOX("Поле Код сотрудника незаполненно","Сообщение") thisform.pageframe1.ActivePage=2 _screen.activeform.Refresh() ELSE *перенос из поля наименование работы в Caption IF thisform.pageframe1.page3.Label4.Caption=='' *вывод сообщения MESSAGEBOX("Добавьте работу для перехода на вкладку выбора материалов","Сообщение") thisform.pageframe1.ActivePage=2 _screen.activeform.Refresh() ENDIF ENDIF ENDIF Программный код кнопки «Отменить» *Завершаем и выходим, если "ДА" if MESSAGEBOX("Отменить заказ?",4+32+256,"Отмена")=6 _screen.activeform.release() *выбор таблицы zakazi SELECT zakazi *добавление пустой строки в конец таблицы APPEND Blank *замена содержимого ячейки otmenen на «1» REPLACE otmenen WITH 1 Else *обновление формы _screen.activeform.refresh() Endif
|
||||
Последнее изменение этой страницы: 2016-12-17; просмотров: 446; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.142.42.247 (0.01 с.) |