Создание программного обеспечения для небольшого супермаркета
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
p>
form2.tag:=1;
form2.close;showmessage('Пароль не верен');combobox1.Text='кассир' thenedit1.text=parolkassir then
Form3.Show; //показать главное окно
form2.Tag:=1;.close;
showmessage('Пароль не верен');;
Для кнопки Cancel:TForm2.BitBtn2Click(Sender: TObject);form2.tag=0 then Application.Terminate;;
Полный код формы приведен в приложении 2.
5.4 Разработка формы Добавление товара
Создадим форму согласно рис. 18.
Рис. 18 Добавление товара
Для кнопки Добавить пропишем следующий исходный код:
procedure TForm5.Button1Click(Sender: TObject);.Table1.insert;.Table1.FieldByName('Name').Asstring :=edit2.Text;.Table1.FieldByName('Trademark').Asstring := edit3.Text;.Table1.FieldByName('Kind').Asstring := edit4.Text;.Table1.FieldByName('Ed_izm').Asstring := combobox1.Text;.Table1.FieldByName('Cena').AsFloat:=strtofloat(edit6.Text);.Table1.FieldByName('Kol_vo').Asinteger:=0;.table1.Next;.Text:='';.Text:='';.Text:='';.Text:='';.Text:='';.Close;
Для кнопки Отмена:TForm5.Button2Click(Sender: TObject);
begin.Close;
Для удобного перехода по полям с помощью нажатия клавиши Enter для полей ввода пропишем следующую процедуру:
procedure TForm5.Edit2KeyPress(Sender: TObject; var Key: Char);key=#13 then edit3.SetFocus;
end;
Аналогично для других полей.
Полный код формы приведен в приложении 5.
5.5 Разработка формы Изменение товара
Создадим форму согласно рис. 19.
Рис. 19. Изменение формы
Для кнопки Изменить пропишем следующий исходный код:
procedure TForm6.Button1Click(Sender: TObject);.Table1.edit;.Table1.FieldByName('Name').Asstring :=edit2.Text;.Table1.FieldByName('Trademark').Asstring := edit3.Text;.Table1.FieldByName('Kind').Asstring := edit4.Text;.Table1.FieldByName('Ed_izm').Asstring := combobox1.Text;.Table1.FieldByName('Cena').AsFloat:=strtofloat(edit6.Text);.table1.post;.Close;
Для кнопки Отмена:TForm6.Button2Click(Sender: TObject);
begin.Close;
Для перехода по записям таблицы предназначены кнопки Назад и Вперед. Для них соответственно пропишем следующие процедуры:TForm6.Button4Click(Sender: TObject);
begin.Table1.Prior;.edit2.Text:=form1.Table1.FieldByName('Name').AsString;.edit3.Text:=form1.Table1.FieldByName('Trademark').AsString;.edit4.Text:=form1.Table1.FieldByName('Kind').AsString;.combobox1.Text:=form1.Table1.FieldByName('Ed_izm').AsString;.edit6.Text:= floattostr(form1.Table1.FieldByName('Cena').AsFloat);;TForm6.Button3Click(Sender: TObject);.Table1.Next;.edit2.Text:=form1.Table1.FieldByName('Name').AsString;.edit3.Text:=form1.Table1.FieldByName('Trademark').AsString;.edit4.Text:=form1.Table1.FieldByName('Kind').AsString;.combobox1.Text:=form1.Table1.FieldByName('Ed_izm').AsString;.edit6.Text:= floattostr(form1.Table1.FieldByName('Cena').AsFloat);
end;
Так как список единиц измерения, фирм-производителей, вида товаров находится в файлах, перед созданием формы необходимо загрузить их в поля выбора с помощью следующего исходного кода:
procedure TForm6.FormActivate(Sender: TObject);.Items.LoadFromFile(path+'edin.txt');.Items.LoadFromFile(path+'firm.txt');.Items.LoadFromFile(path+'vid.txt');
end;
Полный код формы приведен в приложении 6.
5.6 Разработка формы Смена пароля
Пароль как на режим Администратор, так и на режим Кассир можно сменить с помощью формы. (Рис. 20).
Рис. 20. Смена пароля
Для кнопки Сменить пароль Администратора пропишем следующий исходный код:
procedure TForm4.Button1Click(Sender: TObject);edit1.Text=form2.paroladmin thenform2.paroladmin:=edit2.text;('пароль принят');showmessage('пароль не верен');;
Для кнопки Сменить пароль Кассира пропишем следующий исходный код:
procedure TForm4.Button2Click(Sender: TObject);edit3.Text=form2.parolkassir then begin.parolkassir:=edit4.text;('пароль принят');showmessage('пароль не верен');
end;
Для того чтобы при закрытии формы измененные пароли сохранились в файл project.ini, создадим следующую процедуру:
procedure TForm4.WriteParams;IniFile:TIniFile;Path:String;:=Application.ExeName;:=ExtractFileDir(Path);:=TIniFile.Create(Path+'project.ini');.WriteString('FORM1','parol1',form2.parolkassir);.WriteString('FORM1','parol2',form2.paroladmin);
IniFile.Free;;
При закрытии создадим вызов процедуры WriteParams.
procedure TForm4.FormClose(Sender: TObject; var Action: TCloseAction);
begin;;
Полный код формы приведен в приложении 4.
5.7 Разработка формы Единицы измерения
Для работы со списком единиц измерения создадим следующую форму (рис. 21).
Рис. 21. Единицы измерения
Для кнопки Добавить пропишем следующий код:
procedure TForm10.Button1Click(Sender: TObject);.Items.Add(edit1.Text);.Text:='';.SetFocus;
Для кнопки Удалить:TForm10.Button3Click(Sender: TObject);.Items.Delete(listbox1.ItemIndex);;
Для кнопки СохранитьTForm10.Button2Click(Sender: TObject);.Items.SaveToFile(path+'edin.txt');
form10.close;
Полный код формы приведен в приложении 8.
Аналогично создаются формы для работы со списком фирм-производителей и видом товара. Листинг формы для изменения списка фирм-производителей приведен в приложении 10. Листинг формы для изменения списка вида товаров приведен в приложении 11.
Вызов формы единицы измерения осуществляется через пункт главного меню Сервис-Добавить-Единицы измерения, где прописывается следующий код:TForm1.N21Click(Sender: TObject);.show;
Полный код формы приведен в приложении 1.
5.8 Разработка отчетов
Для создания отчета создадим следующую форму (рис. 22).
Рис. 22. Отчет
Для отображения текущей даты на отчете пропишем следующую процедуру:
procedure TForm7.FormCreate(Sender: TObject);.Caption:=datetostr(now);
end;
Полный листинг формы приведен в приложении 7.
Для пункта меню Отчет - по присутствующим товарам пропишем следующую процедуру:
procedure TForm1.N13Click(Sender: TObject);.show;.Close;.SQL.Clear;.SQL.Add('select * from supermarket');.SQL.Add('where kol_vo>0');.Open;.quickrep1.Preview;.Close;
Для пункта меню Отчет - по отсутствующим товарам пропишем следующую процедуру:
procedure TForm1.N14Click(Sender: TObject);.show;.Close;.SQL.Clear;.SQL.Add('select * from supermarket');.SQL.Add('where kol_vo=0');.Open;.QRLabel2.Caption:='по отсутствующим товарам ';.quickrep1.Preview;.Close;
Для пункта меню Отчет - Полный отчет пропишем следующую процедуру:
procedure TForm1.N15Click(Sender: TObject);.show;.Close;.SQL.Clear;.SQL.Add('select * from supermarket');
query1.Open;.QRLabel2.Caption:='по всем товарам, имеющимся в базе данных ';
form7.quickrep1.Preview;.Close;
5.9 Разработка формы режима Кассир
Создадим следующую форму (Рис.23).
Рис. 23. Режим Кассира
В верхней таблицы хранятся данные о товарах, приобретенных пользователем. В нижней таблице хранятся сведения о товарах супермаркета.
Пропишем процедуру при создании формы: