Автоматическое рабочее место для работы со складом
Автоматическое рабочее место для работы со складом ВВедение. Данная программа автоматизированного рабочего места разработана для работников складских помещений, естественно если у них имеется компьютер классом не ниже Pentium. Сейчас на рынке программного обеспечения появляются все больше и больше различных программ для работы не только со складом, но и различные другие программные средства автоматизированного рабочего места, но стоимость их лицензионных копий доходит порой до нескольких десятков тысяч, а моя программа может быть конечно маленько еще “сыровата”, но в процессе работы с нею её можно “довести ее до ума” и все это лишь за пятерку по программированию цена не велика за произведение программного искусства. Каковы её плюсы: ну это естественно простота и понятность (для русского человека) интерфейса программы, что не требует дополнительного обучения или прохождения специальных курсов, особенно для женщин, работающих на складах и не посвященных в азы компьютеров и программного обеспечения; не требовательность к системным ресурсам машины; легкость ввода и отслеживания; простота резервирования базы данных (всего 1 файл), что не маловажно для такой программы. При написании и разработке курсового проекта я научился работать с Borland Pascal, Microsoft Windows 95OSR2, Microsoft Word 97 SR-2 которые использовались для работы над курсовым проектом, научился использовать справку и другие функции Borland Pascal при этом даже разобрался с английским языком и использованием электронных словарей переводчиков таких как Promt, Stylus, Magic Gooddy 98. Огромное спасибо Волкову А.И. - за отличное преподавание предметов, Billу Gaits - за то что он умеет зарабатывать деньги собственным умом, Мерзлякову Д.С. - за поддержку в трудную минуту, Барышеву А.А. - за техническую поддержку, Русских А.И. - за программную поддержку, Казакову В.С. - за разрешение работать на компьютере, Sting, Queen, и другим за хорошую музыку во время работы над курсовым. Задание. Составить программу автоматического рабочего места для работы со складом. Программа должна предоставлять пользователю возможность: Вводить новый товар, указывая следующие параметры Наименование; Количество; Цену; Дату поступления. Осуществлять поиск товара по наименованию и выдавать его параметры. Помечать выбывший товар, указывая дату выдачи. Выводить список имеющегося товара с возможностью сортировки по любому параметру. Выводить список выбывшего товара с возможностью сортировки по любому параметру. Выдавать общую статистическую характеристику: Общая стоимость имеющегося товара; Количество имеющегося товара; Количество выбывшего товара. Сохранять и восстанавливать всю информацию АРМ с диска. Описание переменных. basskl - основная запись с необходимыми переменными это: naim - наименование товара; kol - количество товара; price - цена товара; kol_p - количество пришедшего товара; kol_r - количество товара который ушел; date_p - дата прихода товара; date_r - дата расхода товара. f - file базы слада; list - массив данных базы; schet - счетчик; curs - показатель позиции; stran - счетчик позиции курсора; i - переменная использования; mcurs - переменная начальной позиции меню; k -переменная определения клавиши; res -переменная выбора меню; da - переменная использования; er - переменная ошибки преобразования; tx - переменная текста при поиске; fil - переменная имени базы; key - флажок; seter - переменная использования. Кроме переменных в программе используются процедуры и функции описание которых приведено ниже; Функция probel; Используется для дополнения текста требуемыми количествами пробелов. Вход: Текст, требуемая длина. Выход: Текст, требуемой длины. Функция Edtext; Используется для вывода на экран в нужную позицию текста и его последующего редактирования Функция работает следующим образом: Зацикливается до тех пор пока не будет нажатия Enter или Esc. В это время выводит на экран текст в нужную позицию, обновляется , ожидает нажатия клавиш или delete. Вход: Координаты, текст, длина текста, флажок. Выход: Вывод на экран текста, отредактированный текст. Функция Cifri; Подобна функции Edtext только ввод текста ограничен цифрами. Работает также. Процедура Prishlo; Применяется для вывода на экран меню “Приход” и занесения данных в позицию базы. Описание работы: Работает со строкой массива базы. Выводит на экран меню “Приход”, преобразует текстовые переменные после ввода в строки меню. Процедура Ushlo; Аналогична процедуре Prishlo .Заменена только формула вычисления количества. Процедура Vvodnov; Процедура обеспечивающая вывод на экран меню “Новый товар”, ввод новой строки в базу. Работает: Ограничивается строкой, для работы с переменными записи, выводит на экран меню, пользователем редактируются строки меню, преобразуются, увеличивается счетчик числа строк базы на 1. Процедура Edzapic; Используется для редактирования записи в текущей позиции курсора листинга перечня товаров. Вход: Позиция Выход: отредактированный текст в данной позиции. Процедура Ekran; Отображает на экране заголовок таблицы базы и заполняет таблицу, рассчитывает и отображает на экране нижнюю строку состояния базы общую сумму, общий приход, общий расход, общее количество товаров. Описание: Формирует окно для работы, отображает заголовок таблицы, цикл для вывода первых двадцати строк базы в окно, обнуление счетчиков сумм, цикл на все позиции базы, расчет сумм в этом цикле вывод результата на экран в виде строки состояния. Функция Vivstr; Формирует строку по позиции в базе. Обнуляется. Работает со строкой в массиве базы. Производит преобразование в стринговые переменные числовых значений базы (количества цены, приход, расход), сумма формируется путем вычисления. Добавление нужными пробелами функцией Probel. Процедура Vivlist; Обеспечивает формирование экрана с помощью процедуры Ekran, вывод поясняющей строки. Подкрашивание строки в позиции курсора, опрос клавиш курсора и служебных (для ввода новой, корректировки, удаления). Работает следующим образом: Выполняет процедуру Ekran, прорисовывает строку пояснения, цикл пока не нажата клавиша “влево”, “вправо”, “Enter”, “Esc” - опрашивает клавиатуру с помощью функции “Readkey” если нажата “Вниз” или “Вверх” уменьшаетя или увеличивается соответственно текущий счетчик позиций меню Функция Vstroca; Функция организует главное меню в верхней строке экрана. Устанавливает параметры цвета, выводит на экран массив с переменными меню т.е. названиями меню. Опрашивает клавиатуру на нажатие клавиши “Влево”, “Вправо”, “Enter” выполняет соответствующие этим клавишам команды. Затем если было нажато “Esc” функция принимает значение меньшее 1 и затем в головной программе происходит выход. Процедура Sortirovka; Сортирует данные по заданной колонке. Организуется цикл на все позиции массива базы. База переносит данные в стороннюю базу. Выбирает столбец сортировки сравнивает со сторонней базой если больше то переносит в стороннюю базу запоминает позицию. В конце цикла переставляет позиции основной базы. Описание алгоритма работы программы. Очищается экран выводится меню для указания месторасположения и названия файла базы по умолчанию это “С:\base.dat” затем проверяется создан ли файл если нет то создается. Организуется цикл до конца файла переписываются данные в массив базы. Обнуляются переменные. организуется меню по данным функции Vstroka затем происходи выбор с помощью оператора Case по которому осуществляются переходы. В случае “1” прихода функции Vstroka выводится листинг данных базы и заголовков, организация движения курсора по строкам базы при помощи процедуры Vivlist. В случае результата “2” формируется окно с тенью “Пришло”, заполняется окно с помощью процедуры Prishlo по текущей позиции курсора экрана и листинга. “3” формируется окно “Расход”, заполняется с помощью процедуры Ushlo. “4” организуется окно “Найти наименование” вводится текст с помощью функции Edtext. сравнивается с наименованиями базы если находит устанавливает курсор на это место. Если не находит выводит сообщение и устанавливает на конечную позицию. “5” Окно сортировки. Выполняется процедура Sortirovka. При других значениях функции Vstroca происходит запись файла базы, закрытие файла. Алгоритм программы.
IV. Текст программы. Program kursovoi; uses crt; type basskl = record naim:string[40]; kol:integer; price:single; kol_p:integer; date_p:string[8]; kol_r:integer; date_r:string[8]; end; var f:file of basskl; List:array[0..255] of basskl; Schet:Integer; curs,stran,i,mcurs:integer; k:char; Res,da,er,seter:Integer; Tx,files:String; key:boolean; const mnu:array[1..6] of string[13]=( ' Ввод ', ' Приход ', ' Расход ', ' Найти ', ' Сортировка ', ' Выход '); function Probel(Text:String;Len:Integer):String; begin While length(Text)<Len do Text:=Text+' '; Probel:=copy(Text,1,len)
Страницы: 1, 2
|