|
ТЦУ2 -разработка (18.08.2003) |
ТЦУ 2.0;
разработка; примерно середина активной
стадии (18.08.2003).
Сегодня обратил внимание на то,
что лето в общем-то тихо, незаметно и
приехало. Всех стрекоз ждет очередной п.. Вы
меня не так поняли, не хихикайте, всех
стрекоз ждет очередной поход к муравьям с
просьбой о предоставлении гуманитарной
помощи, впрочем, предоставят муравьи на
этот раз помощь, или не предоставят, пусть
сами разбираются. Опыт последних
нескольких миллионов лет подсказывает, что
не предоставят... Но обещать до последнего
момента будут :).
Итак, что мы имеем на данный
момент касательно новой ТЦУ. Бесконечное
нытье в спине и аллергию на котов, воющих
ночами под окнами, мы опускаем - это никому
кроме меня не интересно. Затронем мы только
техническую сторону разработки.
Осенью 2000 года я стал
плотно интересоваться разработкой
приложений на "настоящем" Visual Basic (далее
просто VB), ходил по тематическим сайтам,
выбирал подходящие ActiveX-компоненты. Как
альтернатива VB рассматривался Delphi (с года 90
я дружил с Паскалем, по нему нам даже
несколько курсов начитывали и экзамены
сдавали - было дело), но с базами данных Delphi
дружил слабо, не то, чтобы он с ними не умел
работать, там все совсем не плохо, хуже с
распространением программ для конечного
прользователя. Ребята из Borland всегда питали
особую слабость к Interbase, а конечные
пользователи, которые с трудом могут
скопировать файл с диска не диск, эту
слабость не питают. Кроме того, что меня в
Delphi всегда пугало - это прото груды кода,
массивные описательные части, как-то
страшновато. В общем Delphi пока
отдыхает.
Параллельно шла работа над ТЦУ
версий 1.XX, система росла и развивалась, но
уже тогда я чувствовал, что Access имеет
потолок, а когда над головой потолок - особо
не полетаешь.
Примерно год назад, да, где-то прошлым летом, я провел ряд исследовательских работ. Выписано было 2 абсолютно одинаковых тестовых приложения, но одно с использованием DAO, другое с использованием ADO. База mdb формата имела объем примерно в 80МБ. По замерам времени на обработку запросов выяснилось, что ADO в среднем в 5-8 раз медленнее, чем старое-доброе DAO. Вариант разработки приложения на Visual Studio .NET рассматривался чисто теоретически. Если у такого приложения скорость еще сильнее упадет - не сносить головы, да и Common Language Runtime на каждую пользовательскую машину ставить - нереально пока все это.
Итак решено. В качестве средств разработки выбираем - VB 6.0 (SP5), DAO 3.6 И пусть меня едят "крутые" программисты, но конечным пользователям не объяснишь, что ADO "круче", чем DAO, только потому, что так заявляет Microsoft. Пользователям подавай скорость и комфорт, а как потроха внутри программы называются - их волнует мало.
Я опускаю весь цикл
мучений, которые способствуют вызреванию
идей, скажу только, что к началу разработки
складская модель в голове практически
сложилась. Несколько основных моментов.
1. Складская модель - FIFO (первый пришел,
первый ушел). Для предпринимателей: сначала
продаем товар из более ранней закупочной
партии, и т.д. Поскольку модель FIFO может
устроить пользователя не во всех ситуациях,
решено было сделать механизм ручного
выбора партии товара для отгрузки.
2. Очень часто сотруднику, формирующему
расходные накладные, нет необходимости
знать закупочную цену. Доступ к закупочным
ценам регулируется соответствующими
правами. В ТЦУ первых версий наличие
закупочных цен необходимо для указания
партии товара на отгрузку, теперь в этом нет
необходимости. Это не значит, что
закупочные цены будут недоступны вовсе,
пользователь с соответствующими правами
может открыть нужную партию и произвести
отгрузку из нее в ручном режиме.
3. Единый реестр документов. В свое время
сильным прорывом было внедрение в ТЦУ
реестра товаров. Внедрение - это не то слово,
поскольку реестр товаров присутствовал в
ТЦУ изначально. Пользователь смог пощупать,
подержать в руках, ощутить свой склад, свои
товары, отслеживать остатки на складе в
реальном времени, а не бегая каждый раз в
отчеты за ведомостью остатков. То же самое
теперь реализовано и для документов.
В системе вводится понятие документа.
Документы существовали и раньше, но теперь
все документы будут сосредоточены в одной
таблице. Опыт показал, что все документы
вполне можно подогнать под единый формат,
без существенный информационной
перегрузки таблиц. При этом получаем массу
преимуществ как интерфейсного плана (с
документами станет работать
значительно удобнее), так и программного
плана (например, экспорт-импорт теперь
можно легко реализовать практически для
документов любого вида всего одной
функцией). Документы можно фильтровать по
типам, причем фильтр очень гибкий, но об
этом чуть ниже.
4. Иерархическая группировка товаров. Проще
говоря, теперь поддерживаются вложенные
группы. Можно создать группу "Конфеты",
в ней "Шоколадные", "Карамель" и т.д.
Это для тех, кому нужно, кому не нужно - могут
довольствоваться одним уровнем групп, как
раньше.
5. Скорость выполнения. Пользователи ТЦУ
нередко жалуются на невысокую скорость
открытия окон, замедленную реацкию ТЦУ. Это
характерно для любого Access-приложения,
особенно, если оно запускается из 2000 или XP
версий Access. Поскольку новая система будет
отдельным Windows-приложением (со своим
инсталлятором-деинсталлятором), скорость
выполнения оказывается на порядок выше.
Задержки на базах объемом до 100 МБ (объем в 100
Мб получается при ежедневной продаже
примерно 1000 позиций за 3-5 лет) субъективно
не заметны (до 1 секунды). Буквально все
пользователи отмечают практически
мгновенное открытие окон со списками,
накладными, платежками.
6. Новый интерфейс. Полностью переработан,
хотя и сохранил некоторые (как мне кажется,
наиболее привлекательные) черты предыдущей
версии. При разработке нового интерфейса
ставилась задача качественно поднять
удобство использования ТЦУ, но при этом
сохранить привычные приемы работы с ТЦУ
версий 1.xxx. Реализована полная поддержка
стилей Windows XP (стоила мне, между прочим,
немалых усилий). Базовый набор действий
пользователя хранится в главном меню
программы (тут уже можно начинать давать
картинки, вот оно - главное меню)
Скорее всего, к концу разработки еще
изменится.
Набор панелей инструментов, которые можно,
кстати, сдвигать, перебрасывать на бок окна
программы, закрывать и настраивать по
своему желанию
Практически любой объект будет иметь
контекстное меню, в котором будет
присутствовать набор необходимых действий.
7. Списки и таблицы. Сортировки работают в
две стороны (по возрастанию и
при повторном нажатии на заголовок столбца
- по убыванию
)
В зависимости от высвечиваемых значений
строки таблиц и списков могут изменять
шрифт и цвет
,
возможно использовать графические
изображения, например, флажки для отметки
накладных при сверке. Настройка ширины
столбцов и изменение порядка следования
столбцов. В выпадающих списках теперь так
же поддерживаются сортировки в две стороны,
изменение ширины столбцов. Нежелательные
столбцы можно скрыть простым сдвиганием
мышью. Все настройки списков и таблиц
запоминаются.
9. Explorer Bar, он же Side Bar, он же область задач.
Выглядит следующим образом:
Докируется либо к левой, либо к правой стороне окна программы и служит для предоставления пунктов меню, которые будут востребованы пользователем с наибольшей вероятностью. Например, пункт "Задачи пользователя" приобретает данный вид в случае, если пользователь выделил какой-то товар в реестре товаров. В этом случае система предлагает просмотреть карточку движения товара, продать этот товар, либо передать на другую точку. Пункт "Принять товары на склад" так же включен в список наиболее вероятных задач, как часто используемый.
Все, что вспомнил - вроде написал. Теперь собственно - скриншоты.
Так выглядит главная форма с
реестром товаров и областью задач.
Единый перечень документов
с контекстным меню. В левой стороне видна
область задач с фильтром документов.
Приходная накладная. Значок троеточия рядом с товаром служит для открытия инструмента выбора товара.
Приходная накладная с раскрытым выпадающим списком выбора товара.
Инструмент выбора товара в приходную накладную.
Настройки программы,
раздел "Интерфейс".
Вот вкратце вы и познакомились с прототипом
новой системы. Многое еще изменится, что-то
уйдет, что-то добавится, поживем-увидим.
Могу сказать, что приложу все возможные
усилия, чтобы порадовать вас (избитая
выходит фраза, прям как у Microsoft - "еще
лучше, еще удобнее, еще быстрее") новой и
удобной системой. Время от времени обещаю
уведомлять о ходе работ.
Готов ответить на вопросы.
Андрей Кравченко admin@megakot.com.ua
|
ТЦУ2 -разработка (18.08.2003) |