Разработка ЭИС планирования закупок для предприятия химической отрасли

Автор работы: Пользователь скрыл имя, 14 Января 2014 в 15:09, дипломная работа

Краткое описание

Целью исследования является обоснование необходимости и разработка информационной системы планирования закупок для предприятия химической отрасли. Предметом исследования в дипломной работе является деятельность компании по планированию закупок. Объектом исследования дипломной работы является научно-производственная фирма «АгроЛидер». ООО «НПФ «АгроЛидер» ― перспективная и динамично развивающаяся компания, занимающаяся производством и поставкой средств защиты растений по всей территории России.

Содержание

ВВЕДЕНИЕ 3
1 АНАЛИТИЧЕСКАЯ ЧАСТЬ 5
1.1 ТЕХНИКО-ЭКОНОМИЧЕСКАЯ ХАРАКТЕРИСТИКА ПРЕДМЕТНОЙ ОБЛАСТИ 5
1.1.1 Характеристика предприятия 5
1.1.2 Краткая характеристика подразделения и его видов деятельности 9
1.2 ЭКОНОМИЧЕСКАЯ СУЩНОСТЬ ЗАДАЧИ 14
1.3 ОБОСНОВАНИЕ НЕОБХОДИМОСТИ И ЦЕЛИ ИСПОЛЬЗОВАНИЯ ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ ДЛЯ РЕШЕНИЯ ЗАДАЧИ 19
1.4 ПОСТАНОВКА ЗАДАЧИ 22
1.5 АНАЛИЗ СУЩЕСТВУЮЩИХ РАЗРАБОТОК 25
1.5.1 Информационная система « Управление снабжением 8» 25
1.5.2 Информационная система «1С: Управление производственным предприятием» 27
1.5.3 Информационная система “Oracle Retail Invoice Matching” 29
1.5.4 Информационная система «Галактика» 30
1.6 ОБОСНОВАНИЕ ВЫБОРА ТЕХНОЛОГИИ ПРОЕКТИРОВАНИЯ 35
1.7 ОБОСНОВАНИЕ ПРОЕКТНЫХ РЕШЕНИЙ ПО ВИДАМ ОБЕСПЕЧЕНИЯ 36
1.7.1 Техническое обеспечение 36
1.7.2 Информационное обеспечение 38
1.7.3 Программное обеспечение 40
1.7.4 Технологическое обеспечение 49
1.7.5 Математическое обеспечение 50
2 ПРОЕКТНАЯ ЧАСТЬ 53
2.1 ИНФОРМАЦИОННОЕ ОБЕСПЕЧЕНИЕ ЗАДАЧИ 53
2.1.1 Используемые классификаторы и системы кодирования 53
2.1.2 Характеристика нормативно-справочной и входной информации 53
2.1.3 Характеристика результатной информации 55
2.1.4 Информационная модель и ее описание 55
2.1.5 Физическая модель 60
2.2 ПРОГРАММНАЯ РЕАЛИЗАЦИЯ ЗАДАЧИ 61
2.2.1 Общие положения (дерево функций и сценарий диалога) 61
2.2.2 Структурная схема пакета 65
2.2.3 Описание программных модулей 67
2.3 РЕАЛИЗАЦИЯ ПОЛЬЗОВАТЕЛЬСКОГО ИНТЕРФЕЙСА 68
3 ОБОСНОВАНИЕ ЭКОНОМИЧЕСКОЙ ЭФФЕКТИВНОСТИ ПРОЕКТА 78
ЗАКЛЮЧЕНИЕ 86
БИБЛИОГРАФИЧЕСКИЙ СПИСОК 88
ПРИЛОЖЕНИЯ 91

Прикрепленные файлы: 1 файл

Диплом Дубна.docx

— 1.16 Мб (Скачать документ)

 end;

 

end;

 

procedure TGP.BTN_INSClick(Sender: TObject);

begin

 if MT.State in [dsInsert, dsEdit] then MT.Post ;

 MT.Insert ;

 if GP_ADD.ShowModal = mrOk then

 begin

   MT.Post ;

   MT.CLOSE ;

   MT.Open;

 end;

 

end;

 

Procedure  TGP.Filter_Gr ;

var

        str: string   ;

        SORTFIELD : STRING ;

        Current_Pos : string ;

begin

        if MT.Active = false then MT.Open;

        if MT1.Active = false then MT1.Open;

        IF MemTableEh1.Active = false then MemTableEh1.Open;

        MemTableEh1.Last ; MemTableEh1.First;

 

 

 

        Filter(Grid ,str , SORTFIELD);

        Current_Pos := MTID_PROD.asstring ;

        if Current_Pos ='' then  Current_Pos := '0' ;

 

        Grid.DataSource := nil ;

        MT.Close ;

        DD.SelectSQL.Clear;

        DD.SelectSQL.Add('Select * from GP where 7=7  ' + Str + SORTFIELD ) ;

        MT.Open ;

 

        Grid.DataSource := DS ;

        MT.Locate('ID_PROD' ,Current_Pos, [loCaseInsensitive] ) ;

end ;

 

 

end.

unit U_GP_ADD;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, Buttons, ExtCtrls, StdCtrls, Mask, DBCtrls;

 

type

  TGP_ADD = class(TForm)

    Panel1: TPanel;

    SpeedButton3: TSpeedButton;

    SpeedButton4: TSpeedButton;

    Label1: TLabel;

    DBEdit1: TDBEdit;

    Label2: TLabel;

    DBEdit2: TDBEdit;

    Label3: TLabel;

    DBEdit3: TDBEdit;

    Label4: TLabel;

    DBEdit4: TDBEdit;

    procedure SpeedButton3Click(Sender: TObject);

    procedure SpeedButton4Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  GP_ADD: TGP_ADD;

 

implementation

 

uses  U_GP;

 

{$R *.dfm}

 

procedure TGP_ADD.SpeedButton3Click(Sender: TObject);

begin

  ModalResult := mrOk ;

end;

 

procedure TGP_ADD.SpeedButton4Click(Sender: TObject);

begin

   ModalResult := mrCancel ;

end;

 

end.

unit U_RASH_MAT;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, MemTableDataEh, Db, ADODB, MemTableEh, DataDriverEh, ADODataDriverEh,

  Buttons, GridsEh, DBGridEh, ExtCtrls, StdCtrls;

 

type

  TRASH_MAT = class(TForm)

    GroupBox1: TGroupBox;

    Panel1: TPanel;

    Grid: TDBGridEh;

    BTN_INS: TSpeedButton;

    BTN_ED: TSpeedButton;

    BTN_DEL: TSpeedButton;

    BTN_CLOSE: TSpeedButton;

    DD: TADODataDriverEh;

    MT: TMemTableEh;

    DS: TDataSource;

    MTID_RASH: TAutoIncField;

    MTID_PR_ZAK: TIntegerField;

    MTID_MAT: TIntegerField;

    MTKOL: TFloatField;

    MTNAIM_MAT: TStringField;

    MTNAIM_GP: TStringField;

    MTDT_ZAP_F: TDateTimeField;

    procedure FormClose(Sender: TObject; var Action: TCloseAction);

    procedure Filter_Gr ;

    procedure GridApplyFilter(Sender: TObject);

    procedure BTN_CLOSEClick(Sender: TObject);

    procedure BTN_INSClick(Sender: TObject);

    procedure BTN_EDClick(Sender: TObject);

    procedure BTN_DELClick(Sender: TObject);

    procedure FormShow(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  RASH_MAT: TRASH_MAT;

 

implementation

 

uses U_DM, Automate, U_RASH_MAT_ADD;

 

{$R *.dfm}

 

procedure TRASH_MAT.FormClose(Sender: TObject; var Action: TCloseAction);

begin

  action := cafree;

  RASH_MAT := nil ;

end;

procedure TRASH_MAT.FormShow(Sender: TObject);

begin

DataSourceIni(RASH_MAT_ADD, DS) ;

end;

 

procedure TRASH_MAT.GridApplyFilter(Sender: TObject);

begin

  Filter_Gr;

end;

 

procedure TRASH_MAT.BTN_CLOSEClick(Sender: TObject);

begin

CLOSE ;

end;

 

procedure TRASH_MAT.BTN_DELClick(Sender: TObject);

begin

 if MT.State in [dsInsert, dsEdit] then MT.Post ;

 

 If  MessageDlg('Удалить запись',MTCONFIRMATION , [MBYES, MBNO], 0)= mrYes then

   MT.Delete ;

 

   MT.CLOSE ;

   MT.Open;

 

end;

 

procedure TRASH_MAT.BTN_EDClick(Sender: TObject);

begin

 if MT.State in [dsInsert, dsEdit] then MT.Post ;

 MT.EDIT ;

 if RASH_MAT_ADD.ShowModal = mrOk then

 begin

   MT.Post ;

   MT.CLOSE ;

   MT.Open;

 end;

 

end;

 

procedure TRASH_MAT.BTN_INSClick(Sender: TObject);

begin

 if MT.State in [dsInsert, dsEdit] then MT.Post ;

 MT.Insert ;

 if RASH_MAT_ADD.ShowModal = mrOk then

 begin

   MT.Post ;

   MT.CLOSE ;

   MT.Open;

 end;

 

end;

 

Procedure  TRASH_MAT.Filter_Gr ;

var

        str: string   ;

        SORTFIELD : STRING ;

        Current_Pos : string ;

begin

        if MT.Active = false then MT.Open;

 

        Filter(Grid ,str , SORTFIELD);

        Current_Pos := MTID_RASH.asstring ;

        if Current_Pos ='' then  Current_Pos := '0' ;

 

        Grid.DataSource := nil ;

        MT.Close ;

        DD.SelectSQL.Clear;

        DD.SelectSQL.Add('Select * from ('+

' SELECT RASH_MAT.* , '+

' MAT.NAIM AS NAIM_MAT, GP.NAIM AS NAIM_GP,  '+

' PLAN_PR.DT_ZAP_F  '+

' FROM RASH_MAT, MAT, PLAN_PR, GP  '+

' WHERE RASH_MAT.ID_MAT =  MAT.ID_MAT AND   '+

' RASH_MAT.ID_PR_ZAK = PLAN_PR.ID_PR_ZAK AND  '+

' PLAN_PR.ID_PROD =  GP.ID_PROD  '+

 

        ') as t_1  where 7=7  ' + Str + SORTFIELD ) ;

        MT.Open ;

 

        Grid.DataSource := DS ;

        MT.Locate('ID_RASH' ,Current_Pos, [loCaseInsensitive] ) ;

end ;

 

 

end.

unit U_RASH_MAT_ADD;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, Buttons, ExtCtrls, StdCtrls, Mask, DBCtrls, MemTableDataEh, Db,

  ADODB, DBGridEh, DBCtrlsEh, DBLookupEh, MemTableEh, DataDriverEh,

  ADODataDriverEh;

 

type

  TRASH_MAT_ADD = class(TForm)

    Panel1: TPanel;

    SpeedButton3: TSpeedButton;

    SpeedButton4: TSpeedButton;

    Label1: TLabel;

    Label2: TLabel;

    Label3: TLabel;

    DBEdit3: TDBEdit;

    ADODataDriverEh1: TADODataDriverEh;

    MemTableEh1: TMemTableEh;

    MemTableEh1ID_MAT: TAutoIncField;

    MemTableEh1EI: TStringField;

    MemTableEh1NAIM: TStringField;

    MemTableEh1HAR: TStringField;

    DataSource1: TDataSource;

    DBLookupComboboxEh2: TDBLookupComboboxEh;

    ADODataDriverEh2: TADODataDriverEh;

    MemTableEh2: TMemTableEh;

    DataSource2: TDataSource;

    MemTableEh2ID_PR_ZAK: TAutoIncField;

    MemTableEh2KOL: TFloatField;

    MemTableEh2DT_ZAP: TDateTimeField;

    MemTableEh2DT_VIP: TDateTimeField;

    MemTableEh2ID_PROD: TIntegerField;

    MemTableEh2DT_ZAP_F: TDateTimeField;

    MemTableEh2DT_VIP_F: TDateTimeField;

    DBLookupComboboxEh1: TDBLookupComboboxEh;

    procedure SpeedButton3Click(Sender: TObject);

    procedure SpeedButton4Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  RASH_MAT_ADD: TRASH_MAT_ADD;

 

implementation

 

uses U_RASH_MAT;

 

{$R *.dfm}

 

procedure TRASH_MAT_ADD.SpeedButton3Click(Sender: TObject);

begin

  ModalResult := mrOk ;

end;

 

procedure TRASH_MAT_ADD.SpeedButton4Click(Sender: TObject);

begin

   ModalResult := mrCancel ;

end;

 

end.

 

 

 

 

 

 

 


Информация о работе Разработка ЭИС планирования закупок для предприятия химической отрасли