Реферат: АРМ для работы со складом - текст реферата. Скачать бесплатно.
Банк рефератов, курсовых и дипломных работ. Много и бесплатно. # | Правила оформления работ | Добавить в избранное
 
 
   
Меню Меню Меню Меню Меню
   
Napishem.com Napishem.com Napishem.com

Реферат

АРМ для работы со складом

Банк рефератов / Экономика и финансы

Рубрики  Рубрики реферат банка

закрыть
Категория: Реферат
Язык реферата: Русский
Дата добавления:   
 
Скачать
Microsoft Word, 507 kb, скачать бесплатно
Заказать
Узнать стоимость написания уникального реферата

Узнайте стоимость написания уникальной работы

Автоматическое рабочее место для работы со складом ВВедение. Данна я программа автомат изированного рабочего места разработана для р аботников складских помещений , естественно если у них имеется компьютер классом не ниж е Pentium . Сейчас на рынке прог раммного обеспечения появляются все больше и больше различных программ для работы не только со складом , но и различные другие программные средства автоматизированного рабочего места , но стоимость их лицензионны х копий доходит порой до нескольких десят ков тысяч , а моя программа может быть конечно маленько еще “сыровата” , но в про ц ессе работы с нею её можно “довести ее до ума” и все это лишь за пятерку по программированию цена не велика за произведение программного искусства . Каковы её плюсы : ну это естественно п ростота и понятность (для русского человека ) интерфейса программы , что не требуе т дополнительного обучения или прохождения сп ециальных курсов , особенно для женщин , работаю щих на складах и не посвященных в азы компьютеров и программного обеспечения ; не требовательность к системным ресурсам машины ; легкость ввода и отслеживани я ; пр остота резервирования базы данных (всего 1 файл ), что не маловажно для такой программы. При написании и разработке курсового проекта я научился работать с Borland Pascal , Microsoft Windows 95 OSR 2, 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 – 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 ; Сортирует данные по заданной колонке. Организуется цикл на все позиции м ассива базы . База переносит данные в сторо ннюю базу . Выбирает столбец сортировки сравни вает со сторонней базой е сли больше то переносит в стороннюю базу запоминает позицию . В конце цикла переставляет позиции основной базы. Описание алгоритма работы п рограммы. Очищается экран выводится ме ню для указания месторасположения и названия файла базы по умолчанию это “С :\ ba se . 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 stri ng[13]=( ' Ввод ', ' Приход ', ' Расход ', ' Найти ', ' Сортировка ', ' Выход '); function Probel(Text:String;Len:Integer):String; begin While length(Text)'); writeln(' Да та прихода ДД.ММ.ГГ ->'); val(Cifri(25,2,'',6,key),kl,er); if NOT key then exit; kol_p:=kol_p+kl; kol:=kol+kl; Date_p:=Cifri(25,3,'',8,key); if NOT key then exit; end; end; procedure Ushlo(posiz:integer); var er:integer; key:Boolean; kl:integer; begi n clrscr; With List[Posiz] do begin writeln(' Расход '); writeln(' Количество ->'); writeln(' Дата расхода ДД.ММ.ГГ ->'); val(Cifri(25,2,'',6,key),kl,er); if NOT key then exit; kol_r:=kol_r+kl; kol:=kol-kl; Date_r:=Cifri(25,3,'',8,key); if NOT key th en exit; end; end; procedure Vvodnov; var Tx:String; er:integer; key:Boolean; begin clrscr; With List[Schet] do begin writeln(' Новый товар '); writeln(' Наименование товара :'); writeln(' Количество :'); writeln(' Цена :'); writeln(' Дата прих ода ДД.ММ.ГГ :'); readln(date_p); Naim:=Edtext(25,2,'',20,key); if NOT key then exit; val(Cifri(25,3,'',6,key),kol,er); if NOT key then exit; kol_p:=kol; val(Cifri(25,4,'',10,key),price,er); if NOT key then exit; Date_p:=Cifri(25,5,'',8,key); if NOT key then exit; inc(Schet); end; end; procedure Edzapic(posiz:integer); var Tx:String; er:integer; key:Boolean; begin clrscr; With List[posiz] do begin writeln(' Редактирование товара '); writeln(' Наименование товара :'); writeln(' Цена :'); Tx:= Edtext(25,2,Naim,20,key); if key then Naim:=tx; str(price:0:2,tx); tx:=Cifri(25,3,tx,10,key); if key then val(tx,price,er); end; end; function vstroca(var curs:integer):integer; var i:integer; begin Textbackground(15); TextColor(0); gotoxy(1,1); write(Probel('',80)); for i:=0 to 5 do begin gotoxy(i*13+1,1); write(mnu[i+1]); end; Textbackground(0); TextColor(14); gotoxy((curs-1)*13+1,1); write(mnu[curs]); repeat k:=readkey; Textbackground(15); TextColor(0); gotoxy((curs-1) *13+1,1); write(mnu[curs]); if k=#0 then k:=readkey; case k of #75: if curs>1 then dec(curs) else curs:=6; #77: if curs<6 then inc(curs) else curs:=1; end; Textbackground(0); TextColor(14); gotoxy((curs-1)*13+1,1); write(mnu[curs]); if k=#13 then vstroca:=curs; until (k=#27) or (k=#13); if k=#27 then vstroca:=-1; end; function VIVSTR(nstr:integer):String; var Skol,sprice,summ, Pkol,Rkol:String[10]; begin VIVSTR:=''; if (nstr=0) then With List[nstr] do be gin str(kol,skol); str(price:9:2,sprice); str(price*kol:9:2,summ); str(kol_p,pkol); str(kol_r,rkol); VIVSTR:=Probel(naim,20)+Probel(skol,6)+Probel(sprice,11)+Probel(summ,11)+ Probel(Pkol,6)+Probel(Date_p,10)+Probel(Rkol,6)+Probel(Date_r,9); end; e nd; procedure Ekran; var i:integer; Summ_,Sum_p,Sum_r:Double; begin Window(1,2,80,25); Textbackground(5); TextColor(10); Clrscr; gotoxy(1,1); Textbackground(3); write(Probel('Наименование ',20)+Probel('Кол-во ',9)+Probel('Цена ',10)+ Probel('Сумм а ',7)+Probel('Приход ',7)+Probel('Дата пост ',10)+Probel('Расход ',6) +Probel(' Дата выд ',9)); Textbackground(5); TextColor(14); for i:=0 to 20 do begin gotoxy(1,2+i); Write(Vivstr(i+stran)); end; Textbackground(15); TextColor(0); gotoxy(1,1+curs); write(VIVSTR(curs+stran-1)); Summ_:=0; Sum_p:=0; Sum_r:=0; for i:=0 to Schet-1 do begin Summ_:=Summ_+(List[i].price*List[i].kol); Sum_p:=Sum_p+(List[i].price*List[i].kol_p); Sum_r:=Sum_r+(List[i].price*List[i].kol_r); end; Textbackground(4); Text Color(15); gotoxy(1,23); write(Probel('',80)); gotoxy(1,23); write(' Итого : ', Summ_:12:2,' руб . Приход : ',Sum_p:0:2,' руб . Расход :',Sum_r:0:2,' руб .'); gotoxy(15,24); write ('Общее количество наименований товара : ',schet,' шт '); end; procedure Sortirovka(num:Integer); var i,j,k:Integer; Bas:Basskl; begin for i:=0 to Schet-1 do begin Bas:=List[i]; for j:=i+1 to Schet-1 do begin case Num of 1: if Bas.Naim>List[j].naim then begin Bas:=List[j]; k:=j end; 2: if Bas.kol>List[j].kol then begin Bas:=List[j]; k:=j end; 3: if Bas.price>List[j].price then begin Bas:=List[j]; k:=j end; 5: if Bas.kol_p>List[j].kol_p then begin Bas:=List[j]; k:=j end; 6: if Bas.date_p>List[j].date_p then begin Bas:=List[j]; k:=j end; 7: if Bas.kol_r>List [j].kol_r then begin Bas:=List[j]; k:=j end; 8: if Bas.date_r>List[j].date_r then begin Bas:=List[j]; k:=j end; end; end; List[k]:=List[i]; List[i]:=Bas; end; end; procedure Vivlist(var seek,curs:integer); var c,k:char; i:integer; begin Ekran; Textbackground(3); gotoxy(1,24); write(Probel(' <- -> - меню | Ins - Добавить | Ctrl+F8 - Удалить | Ctrl+Enter - Из менить ',79)); Textbackground(15); TextColor(1); gotoxy(1,1+curs); write(VIVSTR(curs+stran-1)); repeat c:=readkey; Textbackground(5); TextColor(14); gotoxy(1,1+curs); write(VIVSTR(curs+stran-1)); if c=#0 then k:=readkey; case k of #72: begin Вверх курсор if (curs=1) and (stran>0) then begin dec(stran); Ekran end; if (curs>1) then dec(curs); end; #80: begin Вниз курсор if (c urs=20) and (stran+20=20)) or ((Schet<20) and (curs0 then for i:=curs+stran-1 to Schet-1 do begin List[i]:=List[i+1]; end; dec(Schet); dec(curs); Ekran; end; #82: begin Ins - новая запись Window(12,12,72,17); Textbackground(0); clrscr; Window(10,11,70,16); Textbackground(7); clrscr; новоя запись Vvodnov; Sortirovka(1); Window(1,1,8 0,25); Ekran; end; end; if c=#10 then Ctrl+Enter begin Window(12,12,72,17); Textbackground(0); clrscr; Window(10,11,70,16); Textbackground(7); clrscr; новоя запись Edzapic(Curs+stran-1); Sortirovka(1); Window(1,1,80,25); Ekran; end; Textbackground(15); TextColor(1); gotoxy(1,1+curs); write(VIVSTR(curs+stran-1)); until (k=#27) or (k=#13) or (k=#75)or (k=#77); Window(1,1,80,25); end; begin clrscr; Window(16,12,66,15); Textbackground(9); textcolor (3); clrscr; write (' Введи те название и полный пу ть базы '); gotoxy (3,3); readln (files); if files='' then files:='c:\base.dat'; assign(f,files); $I- reset(f); $I+ if IOResult<>0 then rewrite(f); Schet:=0; While not eof(f) do begin inc(Schet); read(f,List[Schet-1]); end; Textbackground(0); clrscr; curs:=1; stran:=0; mcurs:=1; seter:=15; repeat Ekran; Window(1,1,80,25); res:=vstroca(mcurs); case res of 1:begin Vivlist(stran,curs); Window(1,1,80,25); end; 2:begin Window(16,12,66,15 ); Textbackground(0); clrscr; Window(14,11,64,14); Textbackground(7); clrscr; Запуск новой записи Prishlo(Curs+stran-1); Window(1,1,80,25); end; 3:begin Window(16,12,66,15); Textbackground(0); clrscr; Window(14,11,64,14); Textbackground(7); clrscr; Запуск новой записи Ushlo(Curs+stran-1); Window(1,1,80,25); end; 4:begin Поиск Window(16,12,66,14); Textbackground(7); clrscr; Window(14,11,64,13); Textbackground(8); clrscr; Gotoxy(2,2); Write('Найти наименован ие :'); Tx:=Edtext(25,2,'',20,key); for i:=0 to Schet-1 do if List[i].naim=tx then begin seter:=1; break; end; if i>20 then begin curs:=1; stran:=i end else begin curs:=i+1; stran:=0; end; if seter<>1 then begin Window(16,12,66,14); Textbackground(7); clrscr; Window(14,11,64,13); Textbackground(8); clrscr; Gotoxy(2,2); Write('Наименование ненайдено '); readln; stran:=1; curs:=1; end; Vivlist(stran,curs); Window(1,1,80,25); end; 5:begin Сортировка Window(16,12,66,14); Te xtbackground(0); clrscr; Window(14,11,64,13); Textbackground(7); clrscr; Gotoxy(2,2); Write('Введите поле для сортировки (1..8):'); val(Cifri(38,2,'',1,key),da,er); if da in [1..8] then Sortirovka(da); Window(1,1,80,25); end; end; until (res<1) or (res=6); Rewrite(f); Sortirovka(1); for i:=0 to Schet-1 do Write(f,List[i]); close(f); end.
1Архитектура и строительство
2Астрономия, авиация, космонавтика
 
3Безопасность жизнедеятельности
4Биология
 
5Военная кафедра, гражданская оборона
 
6География, экономическая география
7Геология и геодезия
8Государственное регулирование и налоги
 
9Естествознание
 
10Журналистика
 
11Законодательство и право
12Адвокатура
13Административное право
14Арбитражное процессуальное право
15Банковское право
16Государство и право
17Гражданское право и процесс
18Жилищное право
19Законодательство зарубежных стран
20Земельное право
21Конституционное право
22Конституционное право зарубежных стран
23Международное право
24Муниципальное право
25Налоговое право
26Римское право
27Семейное право
28Таможенное право
29Трудовое право
30Уголовное право и процесс
31Финансовое право
32Хозяйственное право
33Экологическое право
34Юриспруденция
 
35Иностранные языки
36Информатика, информационные технологии
37Базы данных
38Компьютерные сети
39Программирование
40Искусство и культура
41Краеведение
42Культурология
43Музыка
44История
45Биографии
46Историческая личность
47Литература
 
48Маркетинг и реклама
49Математика
50Медицина и здоровье
51Менеджмент
52Антикризисное управление
53Делопроизводство и документооборот
54Логистика
 
55Педагогика
56Политология
57Правоохранительные органы
58Криминалистика и криминология
59Прочее
60Психология
61Юридическая психология
 
62Радиоэлектроника
63Религия
 
64Сельское хозяйство и землепользование
65Социология
66Страхование
 
67Технологии
68Материаловедение
69Машиностроение
70Металлургия
71Транспорт
72Туризм
 
73Физика
74Физкультура и спорт
75Философия
 
76Химия
 
77Экология, охрана природы
78Экономика и финансы
79Анализ хозяйственной деятельности
80Банковское дело и кредитование
81Биржевое дело
82Бухгалтерский учет и аудит
83История экономических учений
84Международные отношения
85Предпринимательство, бизнес, микроэкономика
86Финансы
87Ценные бумаги и фондовый рынок
88Экономика предприятия
89Экономико-математическое моделирование
90Экономическая теория

 Анекдоты - это почти как рефераты, только короткие и смешные Следующий
- Марья Ивановна, а Вовочка курит в туалете.
- Сереженька, иди стрельни у него две сигареты для меня и директора.
Anekdot.ru

Узнайте стоимость курсовой, диплома, реферата на заказ.

Обратите внимание, реферат по экономике и финансам "АРМ для работы со складом", также как и все другие рефераты, курсовые, дипломные и другие работы вы можете скачать бесплатно.

Смотрите также:


Банк рефератов - РефератБанк.ру
© РефератБанк, 2002 - 2016
Рейтинг@Mail.ru