Смекни!
smekni.com

Автоматическое рабочее место для работника склада (стр. 1 из 2)

Выполнила:

студентка гр. ВМ1-99

Н.В. Позднякова
Проверил:старший преподаватель
А.И. Волков
г. Чайковский, 2000 г.

ВВедение.

Данная программа автоматизированного рабочего места разработана для работников складских помещений, естественно если у них имеется компьютер классом не ниже Pentium. Сейчас на рынке программного обеспечения появляются все больше и больше различных программ для работы не только со складом, но и различные другие программные средства автоматизированного рабочего места, но стоимость их лицензионных копий доходит порой до нескольких десятков тысяч, а моя программа может быть конечно маленько еще «сыровата», но в процессе работы с нею её можно «довести ее до ума» и все это лишь за пятерку по программированию цена не велика за произведение программного искусства. Каковы её плюсы: ну это естественно простота и понятность (для русского человека) интерфейса программы, что не требует дополнительного обучения или прохождения специальных курсов, особенно для женщин, работающих на складах и не посвященных в азы компьютеров и программного обеспечения; не требовательность к системным ресурсам машины; легкость ввода и отслеживания; простота резервирования базы данных (всего 1 файл), что не маловажно для такой программы. При написании и разработке курсового проекта я научился работать с Borland Pascal, Microsoft Windows 95OSR2, Microsoft Word 97 SR-2 которые использовались для работы над курсовым проектом, научился использовать справку и другие функции Borland Pascal при этом даже разобрался с английским языком и использованием электронных словарей переводчиков таких как Promt, Stylus, Magic Gooddy 98. Огромное спасибо Волкову А.И. – за отличное преподавание предметов, Billу Gaits – за то что он умеет зарабатывать деньги собственным умом, Мерзлякову Д.С. – за поддержку в трудную минуту, Барышеву А.А. – за техническую поддержку, Русских А.И. – за программную поддержку, Казакову В.С. – за разрешение работать на компьютере, Sting, Queen, и другим за хорошую музыку во время работы над курсовым.

I. Задание.

Составить программу автоматического рабочего места для работы со складом.

Программа должна предоставлять пользователю возможность:

1. Вводить новый товар, указывая следующие параметры

-Наименование;

-Количество;

-Цену;

-Дату поступления.

2. Осуществлять поиск товара по наименованию и выдавать его параметры.

3. Помечать выбывший товар, указывая дату выдачи.

4. Выводить список имеющегося товара с возможностью сортировки по любому параметру.

5. Выводить список выбывшего товара с возможностью сортировки по любому параметру.

6. Выдавать общую статистическую характеристику:

-Общая стоимость имеющегося товара;

-Количество имеющегося товара;

-Количество выбывшего товара.

7. Сохранять и восстанавливать всю информацию АРМ с диска.

II. описание переменных и алгоритма работы программы.

Описание переменных.

-basskl – основная запись с необходимыми переменными это:

-naim – наименование товара;

-kol – количество товара;

-price – цена товара;

-kol_p – количество пришедшего товара;

-kol_r – количество товара который ушел;

-date_p – дата прихода товара;

-date_r – дата расхода товара.

-f – file базы слада;

-list – массив данных базы;

-schet – cчетчик;

-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происходит запись файла базы, закрытие файла.

III.


Алгоритм программы.
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)