Выпуск 44. Техника быстрого проектирования. Часть 1
1 Шаг. Разработка справочников
Введение
|
При анализе информации по базам данных можно заметить, что большинство сайтов и литературы по этой тематике уделяет внимание объектному программированию функций интерфейса (кнопок, полей, списков и т.п.), но к сожалению в них практически нет информации по бизнес аналитике. Например, вы не сможете найти в одном месте короткие методики построения: финансового учета, обработки заказов, производственного учета так, чтобы эта информация могла быть использована и доработана под конкретные нужды предприятия.
С другой стороны мы видим, что для предприятий становиться очень важным ускоренное внедрение баз данных, так, чтобы при минимальных финансовых затратах и времени разработки можно было решить достаточно сложные задачи. Например, на многих предприятиях работают 1-2 человека (могут работать и по временному соглашению), которые отвечают за администрирование локальной сети, разработку и поддержку программного обеспечения. Решение вопросов автоматизации на таких предприятиях возможно только в том случае, если Вы будите использовать методы быстрой разработки.
Основные принципы можно сформулировать так:
- оптимизация и привидение интерфейса к стандартным формам;
- сокращение программного кода, путем вывода его в библиотеки;
- разделение и привязка интерфейса к рабочему месту каждого сотрудника
Освоение этих методов может Вам
- значительно сократить время и средства на разработку базы данных
- повысить производительность разработки приложений в 5 - 10 раз.
- уменьшить ошибки в программном коде на 50-70%
- сократить сроки внедрения и обучения сотрудников до нескольких недель
- быстрее реагировать на новые требования к базам данных
- повысить качество и надежность программного обеспечения
В связи с важностью данной темы для разработчиков разработан цикл статей по следующим разделам:
I. Разработка единого интерфейса базы
1 Шаг. Разработка справочников
2 Шаг. Разработка картотек
II. Разработка административных функций
3 Шаг. Вход в базу данных
4 Шаг. Управление пользователями
5 Шаг. Управление сетью
6 Шаг. Архивация и восстановление
III. Постановка и создание бизнес задач:
7 Шаг. Управление клиентами
8 Шаг. Управление заказами.
9 Шаг. Учет наличных денег (касса)
10 Шаг. Учет безналичных денег (банк)
11 Шаг. Другие решение ..
P/S Разработка и описание бизнес задач требует длительного времени и хороших знаний этих процессов. Но статьи в рассылках будут выстраиваться так, чтобы можно было построить интерфейс практически любой базы данных. В этой рассылке дано описание статьи: "1 шаг. Разработка справочников"
|
Загрузка примеров |
Для того, чтобы разобраться в данной технологии необходимо загрузить 2 примера (la_step01.zip) по базам данных. Описание их дано ниже.
"Шаг 1 - создание справочника.mdb" - создает простейший справочник по базам данных.
"Шаг 2 - связь справочников.mdb" - создает справочник с полями типа список и дата и привязывает к ним другие формы. |
С чего начать разработку базы?
|
При ускоренном проектировании базы данных разработка базы данных начинается с описания небольших форм справочников. При этом используется заранее созданная профессионалами специальная библиотека интерфейса. Она включает в себя специальный класс для создания и управления всеми объектами справочника кнопками, списками и полями.
Таким образом, Вам надо только придумать интерфейс, и не надо каждый раз специально разрабатывать функции, которые будут управлять кнопками форм. За Вас это сделает библиотека справочника. В результате этого и достигается значительная экономия времени на разработку базы данных.
При этом надо учесть, что все команды стандартизованы и могут в случае необходимости изменены через форму справочника, используя встроенный язык VBA. |
Методика
|
Справочник - это минимальный объект проектирования базы данных. Он включает в себя одну таблицу с ключевым полем, а также форму с полями, кнопками и некоторыми командами для обработки записей таблицы. Для некоторых полей-списков применяются запросы. Справочник не имеет собственной системы поиска и печати, т.к. число записей и полей в таблице небольшое и нет смысла организовывать для него эти функции.
В качестве примеров справочника из разных баз данных можно назвать: Единицы измерения (штуки, килограммы, литры), статуса документа (ожидание, закрыт, в работе), тип дома (кирпичный, панельный, деревянный) |
Описание интерфейса |
Весь интерфейс справочника можно разбить на объекты, кнопки, команды и вкладки. Далее дается описание этих объектов.
Кнопки - это объекты справочника, позволяющие выполнить простые действия с записью. Две кнопки на справочнике ОК и Отмена сохраняют или отменяют действия пользователя над записью справочника. Эти кнопки доступны любому пользователю базы, а не только администратору.
Команды - это список действий пользователя над одной записью справочника. Эти команды могут изменяться в зависимости от того, какой пользователь работает с базой.
• Копирование - команда позволяет скопировать текущую запись справочника. Применяется, если требуется быстро ввести данные незначительно отличающиеся от текущей записи
• Создание - команда создает пустую запись. В некоторые поля данные могут заноситься из полей таблицы, где указаны данные по умолчанию.
• Удаление - команда удаляет запись. При этом спрашивает пользователя об этих действиях.
• Скрыть - команда скрывает от просмотра запись справочника. Применяется для важных данных, когда надо скрыть некоторую информацию от пользователей (вид ...)
• Защитить - команда защищает запись от изменений. В этом случае, редактирование и удаление записей не разрешается.
• Таблица - данная команда позволят перейти к редактированию таблицы справочника. Применяется для ускоренного ввода данных в таблицу. При закрытии таблицы ее текущая запись согласовывается с формой.
• Выход - данная команда позволят отменить выбор команд.
Списки - это специальные поля в справочнике, выделенные синим цветом. Это делается для того, чтобы отметить, что данные в списке редактируются двойным нажатием кнопки мыши через новую форму или обычным вводом текста. Применение цвета позволило отменить кнопку справа типа "..." и сохранить ресурсы базы данных.
Дата - это специальные поля для ввода значений дат. Они выделены синим цветом, что означает связь со специальным справочником
Вкладки - специальные закладки разграничивающие текущие и системные поля справочника. Например, на последней вкладке можно найти поля, связанные с изменением и созданием записи (дата создания, изменения и имя оператора). Эти данные можно использовать для контроля за операторами
|
Создание справочника |
Создадим для примера справочник по оборудованию. Ниже указаны этапы его проектирования.
1. Определяем ключевое слово, например, Оборудование. С этим словом будут связаны таблица СправочникОборудование и поля idОборудование (long), Оборудование (text). Эти поля используются классом справочника для поиска.
2. Создаем форму СправочникОборудование, открываем ее в конструкторе и добавляем текст. Он отмечен темно-синим цветом. Комментарии указаны зеленым.
------- начало --------
Option Compare Database
Option Explicit
Private mfrm As clsFormMicro
' Событие срабатывающееся при открытии формы.
Private Sub Form_Open(Cancel As Integer)
' idОборудование - это ключевое поле в таблице СправочникОборудование
' Оборудование - это поле с названием оборудования (применяется в некоторых командах)
' Удалить оборудование - это фраза для команды удаления
Set mfrm = fcClassCreateFormMicro(Me.Form, "idОборудование", "Оборудование", "Удалить оборудование: ")
End Sub
------- конец --------
3. Компилируем базу данных. Если будет ошибка, то устанавливаем ссылку на библиотеку libforms.mda. Она находится в папке library и необходима для работы форм. Привязка к библиотеке ведется автоматически при открытии формы. Если это не произошло при первом открытии, сделайте это через пункт в редакторе VBA: Tools-Referenses ...
4. Проверяем работу кнопок базы данных, нажимая и проверяя их в действии.
5. На следующем этапе (см. пример 2) работы со справочником добавляем новые поля (дата и список) и проверяем их в работе. |
Заключение |
Главное на этом этапе - определение названий объектов и привязка формы к классу справочника. После этого можно переходить к изучению более сложного класса библиотеки форм. |
Ответы на вопросы
Вопрос 1765. Один из самых частых вопросов, которые задают разработчики - это как правильно выбрать средство разработки. Например, смотрите на ссылку в конференции: Что лучше 1с или Access |
Ответ.
Аналитика внедрения показывает, что на самом деле не все так просто, выбор средств зависит от многих факторов и чаще всего опирается не только на рекламу, но и на трезвые головы аналитиков и руководителей. При этом надо понимать, что кроме перечисленных средств разработки существует и масса других. Вот несколько примеров из практики.
1. Компания занимается торговлей бытовой техникой, а поставщик имеет базу комплектующих для ee ремонта на базе системы SAP R/3. Естественно внедрение будет вестись на ее основе. Исключением может быть доработка загрузки данных на Microsoft Access, используя импорт через внешние файлы.
2. Вот другой пример для компании, работающей с системой J.D.Edwards. В этом случае для дублирования некоторых функций системы при отказах создается база данных с использованием Access (на 4-5 компьютеров). Это связано с тем, что надежность Access базы выше, чем у аналогичных систем на базе dbase.
3. Еще пример. Требуется создать диск с обработкой заказов для компании, занимающейся оптовой торговлей репродукциями картин. В этом случае руководство выбирает Access как средство разработки, из-за того, что исходная база зарубежного поставщика имеет формат Access. При таком выборе доработка и внедрение займет меньше времени и финансовых средств, чем внедрение какой-то новой системы учета.
4. Учет в Excel. Со временем при больших объемах информации возникают проблемы учета при работе с Excel. Например, нельзя работать в сети, организовать контроль за пользователями и т.п. Наиболее вероятно, что в этом случае будет выбран Access, как средство создания новой базы данных.
5. Delphi+Access. Зарубежное предприятие занимается промышленным производством. Для системы поиска выбрали алгоритм, основанный на нейронных сетях, базу данных - Access, а средство разработки Delphi. Вариант неплохой - если считать, что код на Delphi получается компактным и легко загружаемым. Правда в конечном случае загрузка данных оказалась слишком медленной и потребовалась переделка всего алгоритма базы данных. |
|