Автор работы: Пользователь скрыл имя, 28 Февраля 2013 в 09:23, дипломная работа
Целью дипломного проекта является разработка программного продукта для автоматизации складского учета Регионального отделения ФСС РФ по РХ. Одним из необходимых требований, предъявленных руководством организации, является минимизация затрат на ввод программы в эксплуатацию и сопровождение. Новая программа позволит оптимизировать складской учет в Региональном отделении ФСС РФ по РХ.
В ходе проведенной работы были сформулированы и решены следующие задачи:
Изучение предметной области;
Анализ входных и выходных данных;
Разработка подсистемы ввода документов, обработки и вывода отчетной информации;
Анализ рынка программных продуктов, для решения задач складского учета;
ВВЕДЕНИЕ 6
1. ХАРАКТЕРИСТИКА СИСТЕМЫ СОЦИАЛЬНОГО СТРАХОВАНИЯ 9
1.1. История развития системы социального страхования в России 9
1.2. Общие положения 10
1.3. Структура Фонда социального страхования РФ 11
1.4. Характеристика организации 12
1.5. Основные задачи Регионального отделения ФСС РФ по РХ 13
1.8. Аппаратное обеспечение Регионального отделения 18
1.9. Единая интегрированная информационная система (ЕИИС) «Соцстрах» 19
1.10. Структура ЕИИС «Соцстрах» 23
Выводы 25
2. ПРОЕКТИРОВАНИЕ И РЕАЛИЗАЦИЯ ПРОГРАММЫ АВТОМАТИЗАЦИИ СКЛАДСКОГО УЧЕТА 26
2.1. Задачи и общие принципы учета материалов 26
2.2. Постановка задачи 29
2.3. Обзор программного обеспечения автоматизации складского учета 29
2.4. Программа Sklad v. 1.00 34
2.5. Описание программы 34
Выводы 41
3. ТЕХНИКА БЕЗОПАСНОСТИ И САНИТАРНЫЕ НОРМЫ 42
3.1. Описание рабочих мест 42
3.2. Расчет освещенности 42
3.3. Расчет вентиляции 46
3.4. Расчет для помещения 46
3.5. Оценка технических условий труда 48
Выводы 50
4. ЭКОНОМИЧЕСКОЕ ОБОСНОВАНИЕ ЭФФЕКТИВНОСТИ ПРОГРАММНОГО ПРОДУКТА 51
Выводы 55
ЗАКЛЮЧЕНИЕ 56
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 57
ГЛОССАРИЙ 59
СПИСОК АББРЕВИАТУР 61
ПРИЛОЖЕНИЯ 62
П.1. Комплексы задач, реализуемые подсистемами ЕИИС «Соцстрах» 62
П.2. Листинг программы 71
П. 3. Материалы внедрения дипломного проекта 101
П. 4 Демонстрационный материал 103
ADOQ.Close;
end;
procedure TfrmMoveMat.tbDeleteClick(
begin
if isClosePeriod(ADOQueryMove.
MessageBox(Self.Handle,'
else
if MessageBox(Self.Handle,'
if PageControl1.Pages[0].Showing=
if ADOQueryMove.RecordCount<>0 then ADOQueryMove.Delete
else
if ADODataSetContenst.
end;
end.
unit untReport;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGridEh, ComCtrls, StdCtrls, Mask, DBCtrlsEh, ToolWin,
DB, ADODB, ImgList, FR_Class, FR_DSet, FR_DBSet;
type
TfrmReport = class(TForm)
ToolBar2: TToolBar;
DBDate1: TDBDateTimeEditEh;
DBDate2: TDBDateTimeEditEh;
tbReport: TToolButton;
DBGridEh1: TDBGridEh;
StatusBar1: TStatusBar;
DataSource1: TDataSource;
ADOQuery1: TADOQuery;
ADOQuery1DSDesigner: TWideStringField;
ADOQuery1DSDesigner2: TSmallintField;
ADOQuery1DSDesigner3: TWideStringField;
ADOQuery1DSDesigner4: TFloatField;
ADOQuery1DSDesigner5: TBCDField;
ADOQuery1DSDesigner6: TFloatField;
ADOQuery1DSDesigner7: TBCDField;
ADOQuery1DSDesigner8: TFloatField;
ADOQuery1DSDesigner9: TBCDField;
ADOQuery1DSDesigner10: TFloatField;
ADOQuery1DSDesigner11: TBCDField;
ImageListReport: TImageList;
ToolButton1: TToolButton;
tbPrint: TToolButton;
frReport1: TfrReport;
frDBDataSet1: TfrDBDataSet;
ADOQuery1DSDesigner12: TWideStringField;
ADOQuery1DSDesigner13: TBCDField;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure ADOQuery1AfterScroll(DataSet: TDataSet);
procedure tbReportClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure tbPrintClick(Sender: TObject);
procedure ADOQuery1BeforeOpen(DataSet: TDataSet);
procedure ADOQuery1BeforeClose(DataSet: TDataSet);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmReport: TfrmReport;
implementation
uses untMain;
{$R *.dfm}
procedure TfrmReport.FormClose(Sender: TObject; var Action: TCloseAction);
var Rs:TADOQuery;
begin
//Заполняем поля фильтра в базу
Rs:=TADOQuery.Create(
Rs.Connection:=frmMain.
Rs.SQL.Add('select * from options');
Rs.Active:=True;
Rs.Edit;
Rs.FieldByName('Date1').Value:
Rs.FieldByName('Date2').Value:
Rs.Post;
Rs.Active:=False;
Rs.Close;
ADOQuery1.Active:=False;
Action:=caFree;
end;
procedure TfrmReport.
begin
if ADOQuery1.RecNo<>-1 then
StatusBar1.Panels[0].Text:=
else
StatusBar1.Panels[0].Text:='
end;
procedure TfrmReport.tbReportClick(
var AddCom:TADOCommand;
begin
ADOQuery1.Active:=False;
AddCom:=TADOCommand.Create(
AddCom.Connection:=frmMain.
//Очистка таблицы
AddCom.CommandText:='DELETE Отчет_по_материалам.* FROM Отчет_по_материалам;';
AddCom.Execute;
//Сальдо на начало
AddCom.CommandText:='INSERT INTO Отчет_по_материалам ( Материал, СальдоНачКол, СальдоНачСум ) '+
'SELECT Состояние.Материал,
Sum([Типы].[Статус]*[
'FROM (Типы INNER JOIN Движение ON Типы.Код = Движение.Тип) INNER JOIN Состояние ON Движение.Код = Состояние.Документ '+
'WHERE (((Движение.Дата)<#'+Copy(
'GROUP BY Состояние.Материал;';
AddCom.Execute;
//Сальдо на конец
AddCom.CommandText:='INSERT INTO Отчет_по_материалам ( Материал, СальдоКонКол, СальдоКонСум ) '+
'SELECT Состояние.Материал, Sum([Типы].[Статус]*[
'FROM (Типы INNER JOIN Движение ON Типы.Код = Движение.Тип) INNER JOIN Состояние ON Движение.Код = Состояние.Документ '+
'WHERE (((Движение.Дата)<=#'+Copy(
'GROUP BY Состояние.Материал;';
AddCom.Execute;
//Приход-расход
AddCom.CommandText:='INSERT INTO Отчет_по_материалам ( Материал, ПриходКол, ПриходСум, РасходКол, РасходСум ) '+
'SELECT Состояние.Материал,
IIf([Типы].[Статус]=1,[
'FROM (Типы INNER JOIN Движение ON Типы.Код = Движение.Тип) INNER JOIN Состояние ON Движение.Код = Состояние.Документ '+
'WHERE (((Движение.Дата)>=#'+Copy(
AddCom.Execute;
ADOQuery1.Active:=True;
end;
procedure TfrmReport.FormCreate(Sender: TObject);
var Rs:TADOQuery;
begin
Self.Top:=10;
Self.Width:=frmMain.
Self.Height:=frmMain.
Self.Left:=(Screen.Width-Self.
//Заполняем поля фильтра
Rs:=TADOQuery.Create(
Rs.Connection:=frmMain.
Rs.SQL.Add('select * from options');
Rs.Active:=True;
DBDate1.Value:=Rs.FieldByName(
DBDate2.Value:=Rs.FieldByName(
Rs.Active:=False;
Rs.Close;
end;
procedure TfrmReport.tbPrintClick(
begin
if frReport1.LoadFromFile(
begin
frReport1.Dictionary.
frReport1.Dictionary.
frReport1.ShowReport;
end
else
MessageBox(Self.Handle,'Не
найден файл отчета','Ошибка',
end;
procedure TfrmReport.
begin
tbPrint.Enabled:=True;
end;
procedure TfrmReport.
begin
tbPrint.Enabled:=False;
end;
end.
П. 3. Материалы внедрения дипломного проекта
П. 4 Демонстрационный материал