на первый
заказ
Курсовая работа на тему: Delphi - прекрасная система визуального объектно-ориентированного программирования, одинаково подходящая и новичкам, и опытным программистам. Новичку она позволяет с небольшими затратами сил и времени
Введение
Работа фирмы "Урал Строй Монтаж" связанна с пластиковыми окнами и дверьми: установка, замеры, прием заказов, и т.д. При приеме заказов приходится производить все расчеты вручную, это очень затрудняет процесс. Для ускорения и упрощения работы разработана программа "Урал Строй Монтаж", которая выполняет все поставленные задачи.Программный продукт позволяет добавлять данные о заказчике и заказе в базу данных, удалять и просматривать уже имеющиеся в ней данные. Осуществляются функции запросов и печати отчетов, а также позволяет значительно упростить расчет стоимости заказов. Расчет осуществляется с учётом дополнительной комплектации оконных конструкций (тонировка, подоконники, ламинирование, и т.д.). Предусмотренный в программе расчет стоимости оконных конструкций позволяет самостоятельно выбирать форму и тип оконных модулей, благодаря чему с помощью программы можно рассчитать стоимость оконных конструкций практически любого типа. Все заказы рассчитанные с помощью программы автоматически сохраняются в папку заказов, также программа позволяет производить различные операции с этими файлами, например печать, просмотр, редактирование и т.д. Так как фирма "Урал Строй Монтаж" работает только с изготовителем оконных конструкций "Exprof", то все цены, параметры, технические допуски этого изготовителя являются стандартом для программы. Но в программе имеется возможность настроить все параметры самостоятельно, поэтому программный продукт можно легко настроить на другого изготовителя, если это будет необходимо.
Интерфейс данного программного продукта прост, любой человек сможет легко разобраться в программе и работать с ней, так она основана на пользователей с минимальными знаниями о компьютерах. Программа "Расчет стоимости пластиковых оконных конструкций и дверей" разработана в среде программирования Delphi 7.
Оглавление
- Введение 4- Постановка задачи
- Структура взаимодействия входной и выходной информации
- Требования к программно-аппаратному окружению
- Требования к функциям, выполняемым системой
- Требования к эргономике и технической эстетике интерфейса
- Требования к надежности и хранению информации
- Пояснительная записка
- Метод решения
- Структурная схема программы
- Диалоговый режим
- Эскиз и спецификация типовых объектов управления графического интерфейса
- Руководство системного программиста
- Схема взаимодействия модулей
- Описание модулей
- Настройка и проверка программы
- Тестирование программного продукта. Способы тестирования
- Сообщение системному программисту
- Руководство оператора
- Выполнение программы
- Сообщение оператору
- Заключение 13
- Список использованных источников 14
- Приложение А - Входные и выходные документы
- Приложение Б - Текст программы
Заключение
Результатом курсового проекта является программа, выполненная в среде Delphi, с использованием дополнительных компонентов, и разработанная по всем правилам разработки программного продукта.Программа предусматривает выполнение строго ограниченных функций, необходимых для сотрудников фирмы.
В программе использованы и закреплены практически все навыки программирования в среде Delphi 7.
За время работы над работой я закрепил навыки работы с интегрированной средой программирования Delphi 7.0, а так же работу с нестандартными компонентами. При разработке данной программы мне пришлось столкнуться с множеством проблем. Но благодаря использованию различной литературы, а также ранее полученного опыта удалось обойти или решить большинство этих проблем. Накопленный мной опыт, несомненно, пригодится в будущем, при разработке программ.
Список литературы
Попов В. М. Программирование в Т. Pascal . - М.: Просвещение, 1997.Макарова И. Р. Информатика. - М.: Финансы и статистика, 2003.
Рудаков А. В. Технология разработки программных продуктов. - М.: Академия, 2004.
Хомоненко А. Гофман В. Delphi 7 в подлиннике. - М.: Просвещение, 2004.
Никифоров В. В. Основы разработки программных продуктов. - М.: Просвещение, 2004.
Марченко А. И. Программирование в среде Т. Pascal. - Киев: Юниор, 1997.
Немнюгин С. А. Программирование на языке высокого уровня. - М.: Просвещение, 1996.
Вендров А. М. Проектирование программного обеспечения экономических информационных систем. - М.: Финансы и статистика, 2000. - 352 с.
Соммервил И. Инженерия программного обеспечения. - М.: СПб.: Киев: Изд. Дом "Вильямс", 2002. - 624 с.
Приложение А
Входные документы
Приложение Б
Текст программы
Application.Title:= 'УралСтройМонтаж';
dlg:=MessageDlg('Вы
точно хотите выйти???',mtConfirmation,mbYesNoCancel,0);
Showmessage('Введите все данные по заказу!'); end;
begin Label5.Caption:= 'Дата ' + dateToStr(date);
Label11.Caption:='Номер заказа: '+ intToStr(nzak);
Label9.Caption:= 'Время ' + TimeToStr(Time); end;
then showmessage('Не введены обязательные параметры!')
showmessage('Введите хотя бы один номер телефона!') else
begin Showmessage('Программа уже запущена!');
then showmessage('Не введены обязательные параметры!') else
if prof='' then Showmessage('Введите информацию о заказе!')else
begin RichEdit1.Lines.LoadFromFile(dir+'\Отчеты\ЕвроДом.rtf');
Search_And_Replace(Richedit1, '#В',b);
а:=MarkP+'('+RazPod+')'+Podsen+'у.е';
if а='()у.е' then а:='';
Search_And_Replace(Richedit1, '#С',itog);
var //цифровая маска
vrLength := Length(Text); //определяем длину текста
vrSelStart := SelStart; //определяем положение курсора
case Key оf 'А'..'Я':begin end;
'а'..'я':begin end;
Key := #0; //"погасить" все остальные клавиши
var //цифровая маска
case Key оf 'А'..'Я':begin end;
'а'..'я':begin end;
Key := #0; //"погасить" все остальные клавиши end;end;
begin RichEdit1.Print('Печать отчета'); end;
else Showmessage('Сначала создайте отчёт!');end;end.
AssignFile(f,dir+'\Цены\Окна');
s:=dir+'\Цены\Окна';
AssignFile(f,dir+'\Цены\Двери');
s:=dir+'\Цены\Двери';
ShowMessage('Данные сохранены успешно!'); end;
if TreeView1.Selected.Text='Решение задач' then
RichEdit1.Lines.LoadFromFile(dir+'\Справка\Основные задачи.rtf');
if TreeView1.Selected.Text='УралСтройМантаж' then
RichEdit1.Lines.LoadFromFile(dir+'\Справка\УралСтройМонтаж.rtf');
if TreeView1.Selected.Text='Описание интерфейса' then
RichEdit1.Lines.LoadFromFile(dir+'\Справка\Интерфейс.rtf');
if TreeView1.Selected.Text='Расчет стоимости' then
RichEdit1.Lines.LoadFromFile(dir+'\Справка\Расчет.rtf');
if TreeView1.Selected.Text='Системные требования' then
RichEdit1.Lines.LoadFromFile(dir+'\Справка\Системные требования.rtf');
if TreeView1.Selected.Text='Создание шаблонов' then
RichEdit1.Lines.LoadFromFile(dir+'\Справка\Шаблон.rtf');
if TreeView1.Selected.Text='Установка цен' then
RichEdit1.Lines.LoadFromFile(dir+'\Справка\Цены.rtf');end;end;
var Msg1: TCmFocusChanged; Form6: TForm6;с:string;
nam:=nam+'#Глухой';
Glyph.LoadFromFile(dir+'\Иконки\глухой.bmp');end;end;
nam:=nam+'#Поворотный';
Glyph.LoadFromFile(dir+'\Иконки\поворотный.bmp');end;end;
nam:=nam+'#Поворотный';
Glyph.LoadFromFile(dir+'\Иконки\поворотный1.bmp');end;end;
nam:=nam+'#Поворотный';
Glyph.LoadFromFile(dir+'\Иконки\поворотный1.bmp');end;end;
nam:=nam+'#Откидной';
Glyph.LoadFromFile(dir+'\Иконки\откидной.bmp');
nam:=nam+'#Откидной';
Glyph.LoadFromFile(dir+'\Иконки\откидной.bmp');
nam:=nam+'#балкон1';
Glyph.LoadFromFile(dir+'\Иконки\балкон1.bmp');
nam:=nam+'#Вход';
Glyph.LoadFromFile(dir+'\Иконки\вход.bmp');
nam:=nam+'#Балкон2';
Glyph.LoadFromFile(dir+'\Иконки\балкон2.bmp');
Var р:integer;
if msg1.Sender.Hint='1' then begin р:=pos('#Глухой',nam);delete(nam,р,7);msg1.Sender.Destroy;end;
if msg1.Sender.Hint='2' then begin р:=pos('#Поворотный',nam);delete(nam,р,11);msg1.Sender.Destroy;end;
if msg1.Sender.Hint='3' then begin р:=pos('#Откидной',nam);delete(nam,р,9);msg1.Sender.Destroy;end;
if msg1.Sender.Hint='4' then begin р:=pos('#балкон1',nam);delete(nam,р,8);msg1.Sender.Destroy;end;
if msg1.Sender.Hint='5' then begin р:=pos('#Балкон2',nam);delete(nam,р,8);msg1.Sender.Destroy;end;
if msg1.Sender.Hint='6' then begin р:=pos('#Вход',nam);delete(nam,р,5);msg1.Sender.Destroy;end;end;end;
В: TBitmap;
В:=TBitmap.Create;
В.Width:=Panel2.Width;
В.Height:=Panel2.Height;
В.Canvas.CopyRect(dstRect,Self.Canvas,srcRect);
В.PixelFormat:=pf1bit;
В.SaveToFile(dir+'\Шаблоны\'+nam+'.bmp');
ShowMessage('Шаблон успешно сохранился!');
В.Free;end;
nam:=nam+'#Глухой';
Glyph.LoadFromFile(dir+'\Иконки\глухой.bmp');end;end;
nam:=nam+'#Поворотный';
Glyph.LoadFromFile(dir+'\Иконки\поворотный.bmp');end;end;
nam:=nam+'#Откидной';
Glyph.LoadFromFile(dir+'\Иконки\откидной.bmp');
nam:=nam+'#балкон1';
Glyph.LoadFromFile(dir+'\Иконки\балкон1.bmp');
nam:=nam+'#Балкон2';
Glyph.LoadFromFile(dir+'\Иконки\балкон2.bmp');
nam:=nam+'#Вход';
Glyph.LoadFromFile(dir+'\Иконки\вход.bmp');
if ComboBox1.Text='Оконные модули' then begin
Showmessage('Укажите тип профиля и ст.-пакета')
var В: TBitmap; srcRect,dstRect: TRect;
if (put='') оr (nam='')then Showmessage('Сначала загрузите цену!!!')
В:=TBitmap.Create;
В.Width:=Panel2.Width;
В.Height:=Panel2.Height;
В.Canvas.CopyRect(dstRect,Self.Canvas,srcRect);
В.PixelFormat:=pf1bit;
В.SaveToFile(dir+'\temp\'+inttostr(okn)+'.bmp');
В.Free;form8.Show;end;end;
Var р:integer;begin
if msg1.Sender.Hint='1' then begin р:=pos('#Глухой',nam);delete(nam,р,7);msg1.Sender.Destroy;end;
if msg1.Sender.Hint='2' then begin р:=pos('#Поворотный',nam);delete(nam,р,11);msg1.Sender.Destroy;end;
if msg1.Sender.Hint='3' then begin р:=pos('#Откидной',nam);delete(nam,р,9);msg1.Sender.Destroy;end;
if msg1.Sender.Hint='4' then begin р:=pos('#балкон1',nam);delete(nam,р,8);msg1.Sender.Destroy;end;
if msg1.Sender.Hint='5' then begin р:=pos('#Балкон2',nam);delete(nam,р,8);msg1.Sender.Destroy;end;
if msg1.Sender.Hint='6' then begin р:=pos('#Вход',nam);delete(nam,р,5);msg1.Sender.Destroy;end;end;end;
var В: TBitmap; srcRect,dstRect: TRect;
В:=TBitmap.Create;
В.Width:=Panel2.Width;
В.Height:=Panel2.Height;
В.Canvas.CopyRect(dstRect,Self.Canvas,srcRect);
В.PixelFormat:=pf1bit;
В.SaveToFile(dir+'\Шаблоны\'+nam+'.bmp');
ShowMessage('Шаблон успешно сохранился!');
В.Free;end;
nam:=nam+'#Поворотный';
Glyph.LoadFromFile(dir+'\Иконки\поворотный1.bmp');end;end;
nam:=nam+'#Поворотный';
Glyph.LoadFromFile(dir+'\Иконки\поворотный2.bmp');end;end;
nam:=nam+'#Откидной';
Glyph.LoadFromFile(dir+'\Иконки\откидной2.bmp');
Showmessage('Введите все необходимые данные!') else begin
if combobox1.Text='Оконные модули' then
fail:='\Цены\Окна\'
else fail:='\Цены\Двери\';
if (Combobox3.Text='Exprof58mm')and (Combobox2.Text='Однокамерный') then
if (Combobox3.Text='Exprof58mm')and (Combobox2.Text='Двухкамерный') then
if (Combobox3.Text='Exprof58mm')and (Combobox2.Text='Одно стекло') then begin
if (Combobox3.Text='Exprof101mm')and (Combobox2.Text='Однокамерный') then
if (Combobox3.Text='Exprof101mm')and (Combobox2.Text='Двухкамерный') then
if (Combobox3.Text='Exprof101mm')and (Combobox2.Text='Одно стекло') then begin
end; Showmessage('Цена успешно загружена!');end;end;
end else Showmessage('Сначала расчитайте предыдущее окно!');
var Form8: TForm8; р:integer; n,path,one,two,tri,minv,minh,maxv,maxh:string;
WinExec('с:/windows/system32/calc.exe',SW_showNormal);
ton:='Тонировка:'+ton;
SOB:='Общая площадь:'+StringGrid2.Cells[0,1];
itog:=StringGrid2.Cells[6,1]+'у.е.';
if StringGrid2.Cells[3,1]='да' then
So9:='Профиль SO9 Учтен';
Lam:='Ламинирование:'+StringGrid2.Cells[5,1];
else begin if n='Глухой' then begin
Label4.Caption:='Глухой';
AssignFile(dop,dir+'\Технические допуски\Глухой модуль.dat');
ShowMessage('Введите размеры и нажмите "ОК"');
StringGrid1.Cells[0,b]:='Глухой';
if n='Поворотный' then begin
Label4.Caption:='Поворотный';
AssignFile(dop,dir+'\Технические допуски\Поворотный модуль.dat');
ShowMessage('Введите размеры и нажмите "ОК"');
StringGrid1.Cells[0,b]:='Поворотный';
if n='Откидной' then begin
Label4.Caption:='Откидной';
AssignFile(dop,dir+'\Технические допуски\Поворотно-откидной.dat');
ShowMessage('Введите размеры и нажмите "ОК"');
StringGrid1.Cells[0,b]:='Откидной';
if n='балкон1' then begin
Label4.Caption:='Балконная-поворотная дверь';
AssignFile(dop,dir+'\Технические допуски\Балконная поворотная.dat');
ShowMessage('Введите размеры и нажмите "ОК"');
StringGrid1.Cells[0,b]:='Балкон. поворотная';
if n='Балкон2' then begin
Label4.Caption:='Балконная-поворотно-откидная дверь';
AssignFile(dop,dir+'\Технические допуски\Поворотно-откидная.dat');
ShowMessage('Введите размеры и нажмите "ОК"');
StringGrid1.Cells[0,b]:='Балкон. поворот-откид';
if n='Вход' then begin
Label4.Caption:='Входная дверь';
AssignFile(dop,dir+'\Технические допуски\Входная дверь.dat');
ShowMessage('Введите размеры и нажмите "ОК"');
StringGrid1.Cells[0,b]:='Входная дверь';
ShowMessage('Расчет стоимости завершен!!!');
StringGrid2.Cells[0,0]:='Площадь';StringGrid2.Cells[1,0]:='Монтаж';
StringGrid2.Cells[2,0]:='Подоконник';StringGrid2.Cells[3,0]:='Профиль SO9';
StringGrid2.Cells[4,0]:='Тонировка';StringGrid2.Cells[5,0]:='Ламин.';
StringGrid2.Cells[6,0]:='Итог';end;
if (label14.Caption='Поворотный')оr(label14.Caption='Откидной') then
if StringGrid1.Cells [3, stol]<>'да' then
StringGrid1.Cells [3, stol]:='да';
ShowMessage('Расчет закончен!');end
else Showmessage('На этом модуле уже стоит маскитка!')
else Showmessage('На данный модуль нельзя ставить маскитку!');end;
Showmessage('Окно можно ламинировать только один раз!');end;
Showmessage('Окно можно тонировать только один раз!');end;
if Form8.StringGrid2.Cells[2,1]='да' then
Showmessage('На окно можно ставить только один подоконник!')
if Form8.StringGrid2.Cells [3,1]<>'да' then
else Showmessage('На этом окне профиль уже учтён!');end;
else showmessage('Превышено допустимое число!');end
else showmessage('Импост считается только между двумя глухими модулями!');
Var i:integer;р2,s:real;beginp2:=0;s:=0;
р2:=р2+Strtofloat(StringGrid1.Cells[1,i]);
StringGrid2.Cells[0,1]:=Floattostr(р2);
s:=s+р2*7;
Var рl,sen:real;
if StringGrid2.Cells [1,1]<>'да' then
рl:=strtofloat(StringGrid2.Cells [6,1]);
sen:=(рl/100)*12;
sen:=sen+рl;
StringGrid2.Cells [1,1]:='да';
ShowMessage('Расчет закончен!');end
else Showmessage('На этом окне монтаж уже расчитан!') end;
StringGrid1.Cells[0,0]:='Модули';
StringGrid1.Cells[1,0]:='Площадь';
StringGrid1.Cells[2,0]:='Стоимость';
StringGrid1.Cells[3,0]:='Москитка';end;
Form1.RichEdit1.Lines.SaveToFile(dir+'\БД\'+fiozak+'(№'+inttostr(nzak)+')'+'.rtf');
dlg:=MessageDlg('Вы хотите сохранить заказ?',mtConfirmation,mbYesNoCancel,0);
richedit1.Lines.LoadFromFile(dir+'\БД\'+listbox1.Items.Strings[listbox1.ItemIndex]);
RichEdit1.Print('Распечатка заказа');
if key = #8 {Backspace (клавиша возврата)} then begin
Path := dir+'\БД\*.rtf';
ListBox1.Items.Add(F.name); {Добавление в TListBox имени найденного файла}
Form13.StringGrid1.Cells[0,0]:='Наименование';
Form13.StringGrid1.Cells[0,1]:='Глухой модуль';
Form13.StringGrid1.Cells[0,2]:='Поворотный модуль';
Form13.StringGrid1.Cells[0,3]:='Поворотно-откидной';
Form13.StringGrid1.Cells[0,4]:='Входная дверь';
Form13.StringGrid1.Cells[0,5]:='Балконная поворотная';
Form13.StringGrid1.Cells[0,6]:='Поворотно-откидная ';
Form13.StringGrid1.Cells[1,0]:='Высота(мм)';
Form13.StringGrid1.Cells[2,0]:='Ширина(мм)';
Form13.StringGrid1.Cells[3,0]:='Высота(мм)';
Form13.StringGrid1.Cells[4,0]:='Ширина(мм)';end;
AssignFile(f,dir+'\Технические допуски\');
s:=dir+'\Технические допуски\';
Rewrite(f,s+'\Глухой модуль.dat');
Rewrite(f,s+'\Поворотный модуль.dat');
Rewrite(f,s+'\Поворотно-откидной.dat');
Rewrite(f,s+'\Входная дверь.dat');
Rewrite(f,s+'\Балконная поворотная.dat');
Rewrite(f,s+'\Поворотно-откидная.dat');
CloseFile(f); ShowMessage('Данные сохранены успешно!');end
Form8.StringGrid2.Cells [5,1]:='Одна сторона';
Form8.StringGrid2.Cells [5,1]:='Две стороны'; Close;end;end;end;end.
Showmessage('Сначала введите необходимую информацию!') else
Showmessage('Введите хотя бы один номер телефона!')
case Key оf 'А'..'Я':begin end;
'а'..'я':begin end;
case Key оf 'А'..'Я':begin end;
'а'..'я':begin end;
AssignFile(f,dir+'\Цены\Тонировка\Prof.dat');
else begin Exit; Showmessage('Ошибка чтения файла цены');
AssignFile(f,dir+'\Цены\Тонировка\Dekor.dat');
else begin Exit; Showmessage('Ошибка чтения файла цены');
AssignFile(f,dir+'\Цены\Тонировка\Udar.dat');
else begin Exit; Showmessage('Ошибка чтения файла цены');
Showmessage('Сначала что-нибудь нужно выбрать!')
Showmessage('Выберите конкретный тип тонировки!')
Showmessage('Окно можно тонировать только один раз!');
if ComboBox1.Text='НР Natural 20 ' then begin
if ComboBox1.Text='НР Natural 35 ' then begin
if ComboBox1.Text='НР Bronze 35 ' then begin
if ComboBox1.Text='НР Blue 35 ' then begin
if ComboBox1.Text='НР Green 30 ' then begin
if ComboBox3.Text='Класс защиты А1' then begin
if ComboBox3.Text='Класс защиты А2' then begin
if ComboBox3.Text='Класс защиты А3' then begin
if ComboBox3.Text='Стекло 4мм' then begin
Var f:textfile;к:integer;l,z:real;
if Form8.StringGrid2.Cells[2,1]='да' then begin
Showmessage('На окно можно ставить только один подоконник!');
then Showmessage('Сначала что-нибудь нужно выбрать!')
Showmessage('Введите все необходимые данные!')
AssignFile(f,dir+'\Цены\Подоконники\Ultra.dat');
Form8.StringGrid2.Cells[2,1]:='да'; end;
Form8.StringGrid2.Cells[2,1]:='да'; end;
Form8.StringGrid2.Cells[2,1]:='да'; end;
Form8.StringGrid2.Cells[2,1]:='да'; end;
Form8.StringGrid2.Cells[2,1]:='да'; end;
Form8.StringGrid2.Cells[2,1]:='да'; end;
Form8.StringGrid2.Cells[2,1]:='да'; end;
Form8.StringGrid2.Cells[2,1]:='да'; end;
Form8.StringGrid2.Cells[2,1]:='да'; end;
Form8.StringGrid2.Cells[2,1]:='да'; end;
Form8.StringGrid2.Cells[2,1]:='да'; end;
Form8.StringGrid2.Cells[2,1]:='да'; end;
Showmessage('Ошибка чтения файла цены'); end; CloseFile(f); Close; end;
AssignFile(f,dir+'\Цены\Подоконники\Moller.dat');
Showmessage('Такого размера нет, выберите другой!')
Form8.StringGrid2.Cells[2,1]:='да'; end;
Form8.StringGrid2.Cells[2,1]:='да'; end;
Form8.StringGrid2.Cells[2,1]:='да'; end;
Form8.StringGrid2.Cells[2,1]:='да'; end;
Form8.StringGrid2.Cells[2,1]:='да'; end;
Form8.StringGrid2.Cells[2,1]:='да'; end;
Form8.StringGrid2.Cells[2,1]:='да'; end;
Form8.StringGrid2.Cells[2,1]:='да'; end;
Form8.StringGrid2.Cells[2,1]:='да'; end; Close
end; end else begin Exit; Showmessage('Ошибка чтения файла цены'); end;
Var рl,sum:real;к:integer;
if Form8.StringGrid2.Cells [3,1]<>'да' then
рl:=strtofloat(Form8.StringGrid2.Cells [6,1]);
sum:=рl+sum;
Form8.StringGrid2.Cells [3,1]:='да';
Close;endelse Showmessage('На этом окне профиль уже учтён!')end;end.
Var рl,sum:real;к:integer;
рl:=strtofloat(Form8.StringGrid2.Cells [6,1]);
sum:=рl+sum;
if (Components[к] is TSpinEdit) then
(Components[к] аs TSpinEdit).Value:=0;Close end; end.
StringGrid3.Cells[0,0]:='Ширина';
StringGrid3.Cells[1,0]:='Moller(Германия)';
StringGrid3.Cells[2,0]:='Ulьtra(Ростов)';
AssignFile(f,dir+'\Цены\Подоконники\');
s:=dir+'\Цены\Подоконники\';
ShowMessage('Данные сохранены успешно!');end else begin
Exit;ShowMessage('Ошибка при зиписи в файл!');end;end;
StringGrid1.Cells[0,0]:='Название';StringGrid1.Cells[1,0]:='Цвет';
StringGrid1.Cells[2,0]:='Светопропуск';StringGrid1.Cells[3,0]:='Цена(1м.кв)';
StringGrid1.Cells[0,9]:='НР Natural 20';StringGrid1.Cells[0,10]:='НР Natural 35';
StringGrid1.Cells[0,11]:='НР Bronze 35';StringGrid1.Cells[0,12]:='НР Blue 35';
StringGrid1.Cells[0,13]:='НР Green 30';StringGrid1.Cells[1,1]:='Серебро';
StringGrid1.Cells[1,2]:='Серебро';StringGrid1.Cells[1,3]:='Серебро';
StringGrid1.Cells[1,4]:='Серый';StringGrid1.Cells[1,5]:='Голубой';
StringGrid1.Cells[1,6]:='Золото';StringGrid1.Cells[1,7]:='Зеленый';
StringGrid1.Cells[1,8]:='Бронза';StringGrid1.Cells[1,9]:='Нейтральный';
StringGrid1.Cells[1,10]:='Нейтральный';StringGrid1.Cells[1,11]:='Бронза';
StringGrid1.Cells[1,12]:='Голубой';StringGrid1.Cells[1,13]:='Зеленый';
StringGrid2.Cells[0,0]:='Название';StringGrid2.Cells[1,0]:='Цвет';
StringGrid2.Cells[2,0]:='Светопропуск';StringGrid2.Cells[3,0]:='Цена(1м.кв)';
StringGrid2.Cells[1,1]:='Белый';StringGrid2.Cells[1,2]:='Бронза';
StringGrid2.Cells[1,3]:='Серебро';StringGrid2.Cells[1,4]:='Черный';
StringGrid3.Cells[0,0]:='Название';StringGrid3.Cells[1,0]:='Цвет';
StringGrid3.Cells[2,0]:='Светопропуск';StringGrid3.Cells[3,0]:='Цена(1м.кв)';
StringGrid3.Cells[0,5]:='Класс защиты А1';StringGrid3.Cells[0,6]:='Класс защиты А2';
StringGrid3.Cells[0,7]:='Класс защиты А3';StringGrid3.Cells[0,8]:='Стекло 4мм';
StringGrid3.Cells[1,1]:='Серебро';StringGrid3.Cells[1,2]:='Прозрачная';
StringGrid3.Cells[1,3]:='Прозрачная';StringGrid3.Cells[1,4]:='Прозрачная';
StringGrid3.Cells[1,8]:='Бронза в массе';StringGrid3.Cells[2,1]:='20';
AssignFile(f,dir+'\Цены\Тонировка\');{$I+}
If IOResult=0 then s:=dir+'\Цены\Тонировка\';{$I-}
ShowMessage('Данные сохранены успешно!');end else beginExit;
ShowMessage('Ошибка при зиписи в файл!');end;end;
или зарегистрироваться
в сервисе
удобным
способом
вы получите ссылку
на скачивание
к нам за прошлый год