Дополнительная зарплата (отпускные, учебный отпуск и т.д.) - 20% от основной зарплаты:
руб.Отчисление на социальное страхование - 26% от основной зарплаты:
руб.Оплата труда руководителя дипломного проекта (Никонов С. В) с начислениями за 12 часов.
руб.Стоимость работы компьютера:
руб.где 45 руб. /ч. - стоимость работы одного часа компьютера; 45 ч. - время работы.
Стоимость диска - 15 руб.
Стоимость инструкции - руководство по эксплуатации: 3 руб.
Итого общие затраты - 5758,31 руб.
Накладные расходы предприятия (амортизация помещения, освещения, отопления и т.д.) составляет 10% от всех затрат:
руб.Полная себестоимость программы:
5758,31+575,83=6334,14 руб.
Для определения стоимости программы начислим плановую прибыль в размере 15% (от 10 до 25%) по выбору студента:
руб. руб.Приложение баз данных, как следует уже из его названия, предназначено для взаимодействия с некоторым источником данных - базой данных (БД). Взаимодействие подразумевает получение данных, их представление в определенном формате для просмотра пользователем, редактирование в соответствии с реализованными в программе бизнес - алгоритмами и возврат обработанных данных обратно в базу данных.
В качестве источника данных могут выступать как собственно базы данных, так и обычные файлы - текстовые, электронные таблицы и т.д. Но здесь мы будем рассматривать приложения, работающие с базами данных.
Как известно, базы данных обслуживаются специальными программами - системами управления базами данных (СУБД), которые делятся на локальные, преимущественно однопользовательские, предназначенные для настольных приложений, и серверные - сетевые (часто удаленные), многопользовательские, функционирующие на выделенных компьютерах - серверах. Главный критерий такой классификации - объем базы данных и средняя нагрузка на СУБД.
Тем не менее, несмотря на разнообразие реализаций, общая архитектура приложения баз данных остается неизменной.
Само приложение включает механизм получения и отправки данных, механизм внутреннего представления данных в том или ином виде, пользовательский интерфейс для отображения и редактирования данных, бизнес-логику для обработки данных.
Механизм получения и отправки данных обеспечивает соединение с источником данных (часто опосредованно). Он должен "знать", куда ему обращаться и какой протокол обмена использовать для обеспечения двунаправленного потока данных.
Механизм внутреннего представления данных является ядром приложения баз данных. Он обеспечивает хранение полученных данных в приложении и предоставляет их по запросу других частей приложения.
Пользовательский интерфейс обеспечивает просмотр и редактирование данных, а также управление данными и приложением в целом.
Бизнес-логика приложения представляет собой набор реализованных в программе алгоритмов обработки данных.
Между приложением и собственно базой данных находится специальное программное обеспечение (ПО), связывающее программу и источник данных и управляющее процессом обмена данными. Это ПО может быть реализовано самыми разнообразными способами, в зависимости от объема базы данных, решаемых системой задач, числа пользователей, способами соединения приложения и базы данных. Промежуточное ПО может быть реализовано как окружение приложения, без которого оно вообще не будет работать, как набор драйверов и динамических библиотек, к которым обращается приложение, может быть интегрировано в само приложение. Наконец, это может быть отдельный удаленный сервер, обслуживающий тысячи приложений.
1. Бобровский С.И. Delphi 7. - СПб.: Питер. 2004.
2. Гаевский А.Ю. Самоучитель работы на ПК. - М.: ТЕХНОЛОДЖИ. 2004.
3. Губарев В.Г. Программное обеспечение и операционные системы ПК. - Ростов н/Д.: Феникс. 2004.
4. Марченко А.И., Марченко Л.А. Программирование в среде Turbo Pascal 7.0. - СПб.: Корона принт. 2005.
5. Могилёв А.В., Пак Н.И., Хеннер Е.К. Практикум по информатике. М.: Академия. 2006.
6. Рудаков А.В. Технология разработки программных продуктов. - М.: Академия. 2006.
7. Кузнецова Т.В., Кузнец С.Л. Кадровое делопроизводство. - М.: ООО «Интел - синтез АПР». 2006.
program Project1;
uses
Forms,
Unit1 in 'Unit1. pas' {Form1},
Unit2 in 'Unit2. pas' {Form2},
Unit3 in 'Unit3. pas' {Form3};
{$R *. res}
begin
Application. Initialize;
Application. CreateForm(TForm1, Form1);
Application. Run;
end.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, XPMan, Buttons, jpeg, ExtCtrls;
type
TForm1 = class(TForm)
Image1: TImage;
Label1: TLabel;
procedure Image1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2;
{$R *. dfm}
procedure TForm1. Image1Click(Sender: TObject);
begin
Form2: =TForm2. Create(Self);
try
Form2. ShowModal;
finally
Form2. Free;
end;
end;
end.
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, XPMan, ComCtrls, Menus, Buttons, DB, DBTables, ExtCtrls, DBCtrls, Mask, RpDefine, RpCon, RpConDS, RpConBDE, RpRave;
type
TForm2 = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
XPManifest1: TXPManifest;
MainMenu1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
TabSheet3: TTabSheet;
TabSheet4: TTabSheet;
DBNavigator1: TDBNavigator;
DataSource1: TDataSource;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Table1: TTable;
Table1Fio: TStringField;
Table1Im: TStringField;
Table1Ot: TStringField;
Table1Dd: TStringField;
Table1Dm: TStringField;
Table1Dg: TStringField;
Table1TRdn: TStringField;
Table1TRdd: TStringField;
Table1Obr: TStringField;
Table1NamObYch: TStringField;
Table1Nam: TStringField;
Table1Ser: TFloatField;
Table1Nom: TFloatField;
Table1GodOkonch: TStringField;
Table1ProfOsn: TStringField;
Table1ProfDr: TStringField;
Table1StajRabnad: TStringField;
Table1StajRabnam: TStringField;
Table1StajRabnag: TStringField;
Table1StajObd: TStringField;
Table1StajObm: TStringField;
Table1StajObg: TStringField;
Table1StajNepd: TStringField;
Table1StajNepm: TStringField;
Table1StajNepg: TStringField;
Table1Pas: TStringField;
Table1PasNom: TStringField;
Table1Pasd: TStringField;
Table1Pasm: TStringField;
Table1Pasg: TStringField;
Table1PasVid: TStringField;
Table1DatRegd: TStringField;
Table1DatRegm: TStringField;
Table1DatRegg: TStringField;
Table1NomerTel: TStringField;
Table1PrimnaRabd: TStringField;
Table1Strpod: TStringField;
Table1Dolg: TStringField;
Table1Stvka: TStringField;
Table1Osn1: TStringField;
Table1Podpes: TStringField;
Table1DatAtest: TStringField;
Table1ReshKom: TStringField;
Table1Docnom: TStringField;
Table1Docdat: TStringField;
Table1Osn2: TStringField;
Table1Datnach: TStringField;
Table1Datokoch: TStringField;
Table1Vidpovish: TStringField;
Table1NaimenObrYch: TStringField;
Table1Docnaimen: TStringField;
Table1DocSer: TStringField;
Table1Docd: TStringField;
Table1Osn3: TStringField;
Table1DataNach: TStringField;
Table1DataKon: TStringField;
Table1Special: TStringField;
Table1DokymNam: TStringField;
Table1DokymNOM: TStringField;
Table1Dokymdat: TStringField;
Table1Osn4: TStringField;
Table1KolD: TStringField;
Table1PerRabS: TStringField;
Table1PerRabPo: TStringField;
Table1KolDen: TStringField;
Table1DataNa: TStringField;
Table1DataOk: TStringField;
Table1Osn5: TStringField;
Table1Yvol: TStringField;
Table1DatYd: TStringField;
Table1DatYm: TStringField;
Table1DatYg: TStringField;
Table1PrikN: TStringField;
Table1Prikd: TStringField;
Table1Prikm: TStringField;
Table1Prikg: TStringField;
Table1RabKadSlD: TStringField;
Table1Pod: TStringField;
Table1Rashifr: TStringField;
Table1Rabotnic: TStringField;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
Label4: TLabel;
DBEdit3: TDBEdit;
Label5: TLabel;
DBEdit4: TDBEdit;
Label6: TLabel;
DBEdit5: TDBEdit;
Label7: TLabel;
DBEdit6: TDBEdit;
Label8: TLabel;
Label9: TLabel;
DBEdit7: TDBEdit;
Label10: TLabel;
DBEdit8: TDBEdit;
Label12: TLabel;
DBEdit10: TDBEdit;
Label13: TLabel;
DBEdit11: TDBEdit;
Label14: TLabel;
DBEdit12: TDBEdit;
Label15: TLabel;
DBEdit13: TDBEdit;
Label16: TLabel;
DBEdit14: TDBEdit;
Label17: TLabel;
DBEdit15: TDBEdit;
Label18: TLabel;
DBEdit16: TDBEdit;
Label19: TLabel;
DBEdit17: TDBEdit;
Label20: TLabel;
Table1Grajdan: TStringField;
Table1MestoJ: TStringField;
Label11: TLabel;
DBEdit9: TDBEdit;
Label21: TLabel;
DBEdit18: TDBEdit;
Label22: TLabel;
DBEdit19: TDBEdit;
Label23: TLabel;
DBEdit20: TDBEdit;
Label24: TLabel;
DBEdit21: TDBEdit;
Label25: TLabel;
Label26: TLabel;
Label27: TLabel;
DBEdit22: TDBEdit;
Label28: TLabel;
DBEdit23: TDBEdit;
Label29: TLabel;
DBEdit24: TDBEdit;
Label30: TLabel;
Label31: TLabel;
Label32: TLabel;
Label33: TLabel;
DBEdit25: TDBEdit;
Label34: TLabel;
DBEdit26: TDBEdit;
Label35: TLabel;
DBEdit27: TDBEdit;
Panel1: TPanel;
Label36: TLabel;
Label37: TLabel;
DBEdit28: TDBEdit;
Label38: TLabel;
DBEdit29: TDBEdit;
Label39: TLabel;
DBEdit30: TDBEdit;
Label40: TLabel;
DBEdit31: TDBEdit;
Label41: TLabel;
DBEdit32: TDBEdit;
Label42: TLabel;
Label43: TLabel;
DBEdit33: TDBEdit;
Label44: TLabel;
Label45: TLabel;
DBEdit34: TDBEdit;
Label46: TLabel;
DBEdit35: TDBEdit;
Label47: TLabel;
DBEdit36: TDBEdit;
Label48: TLabel;
DBEdit37: TDBEdit;
Label49: TLabel;
Panel2: TPanel;
Label50: TLabel;
DBEdit38: TDBEdit;
Label51: TLabel;
DBEdit39: TDBEdit;
Label52: TLabel;
DBEdit40: TDBEdit;
Label53: TLabel;
DBEdit41: TDBEdit;
Label54: TLabel;
DBEdit42: TDBEdit;
Label55: TLabel;
DBEdit43: TDBEdit;
Label56: TLabel;
Panel3: TPanel;
Panel4: TPanel;
Panel5: TPanel;
Label57: TLabel;
Label58: TLabel;
Label59: TLabel;
Label60: TLabel;
Label61: TLabel;
Label62: TLabel;
Label63: TLabel;
DBEdit44: TDBEdit;
Label64: TLabel;
DBEdit45: TDBEdit;
Label65: TLabel;
DBEdit46: TDBEdit;
Label66: TLabel;
DBEdit47: TDBEdit;
Label67: TLabel;
DBEdit48: TDBEdit;
Label68: TLabel;
Label69: TLabel;
DBEdit49: TDBEdit;
Label70: TLabel;
DBEdit50: TDBEdit;
Label71: TLabel;
DBEdit51: TDBEdit;
Label72: TLabel;
DBEdit52: TDBEdit;
Label73: TLabel;
Label74: TLabel;
DBEdit53: TDBEdit;
Label75: TLabel;
DBEdit54: TDBEdit;
Label76: TLabel;
DBEdit55: TDBEdit;
Label77: TLabel;
DBEdit56: TDBEdit;
Label78: TLabel;
Label79: TLabel;
DBEdit57: TDBEdit;
Label80: TLabel;
DBEdit58: TDBEdit;
Label81: TLabel;
DBEdit59: TDBEdit;
Label82: TLabel;
DBEdit60: TDBEdit;
Label83: TLabel;
DBEdit61: TDBEdit;
Label84: TLabel;
DBEdit62: TDBEdit;
Label85: TLabel;
DBEdit63: TDBEdit;