Главная страница

ИС ростелеком. Дипломная Егорова. Введение 4 глава 1 технический проект и описание сред разработок 6 1Описание предметной области 6 2 Описание технологии обработки информации 7


Скачать 0.85 Mb.
НазваниеВведение 4 глава 1 технический проект и описание сред разработок 6 1Описание предметной области 6 2 Описание технологии обработки информации 7
АнкорИС ростелеком
Дата27.03.2022
Размер0.85 Mb.
Формат файлаdocx
Имя файлаДипломная Егорова.docx
ТипРеферат
#419605
страница5 из 7
1   2   3   4   5   6   7

2.5Руководство программиста



Информационная система разработана, как локальная система. Общая блок схема представлена на рис.2.8.


Рисунок 2.8– Общая блок-схема

2.6 Разработка главной формы и подключение к базе данных



Для работы с программным продуктом используется простой, интуитивно понятный интерфейс. Последовательность работы с объектами формы определяется командными кнопками. Главное окно системы представлено на рис. 2.9.



Рисунок 2.9– Главное окно системы
Программа состоит из следующих окон:

    • Абоненты;

    • Тарифы;

    • Оплата;

    • Отчеты;

Для того, чтобы организовать переход на другие формы, был написан следующий код:

unit uMenu; // модуль главной формы

interface

uses

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

Dialogs, ADODB, DB, Grids, DBGrids, ExtCtrls, DBCtrls, Calendar,

ComCtrls, XPMan, StdCtrls, ExtDlgs,

Buttons, Menus,ComObj, Math,StrUtils, Mask, jpeg;

type // типы обьекто созданные конструктором форм делфи

TForm1 = class(TForm)

XPManifest1: TXPManifest;

ADOConnection1: TADOConnection;

XPManifest2: TXPManifest;

BitBtn2: TBitBtn;

BitBtn1: TBitBtn;

BitBtn4: TBitBtn;

BitBtn6: TBitBtn;

Image2: TImage;

procedure ADOTable1DSDesigner3SetText(Sender: TField;

const Text: String);

procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);

procedure c1Click(Sender: TObject);

procedure N11Click(Sender: TObject);

procedure BitBtn4Click(Sender: TObject);

procedure BitBtn7Click(Sender: TObject);

procedure BitBtn8Click(Sender: TObject);

procedure RadioButton1Click(Sender: TObject);

procedure BitBtn6Click(Sender: TObject);

procedure BitBtn2Click(Sender: TObject);

procedure BitBtn1Click(Sender: TObject);

private

{ Private declarations }

public

procedure GridToExcel( DBGridv : TDBGrid);

{ Public declarations }

end;

var

Form1: TForm1;

implementation

uses

FinalReports, uOplata, uAbonents, uRTFReport, uTarif;

{$R *.dfm}

procedure TForm1.ADOTable1DSDesigner3SetText(Sender: TField;

const Text: String);

var a:integer;

begin

if text='' then begin Sender.AsInteger := 1 ; exit; end;

a:= Pos(':', text) ;

if a<=0 then begin Sender.AsInteger := 1 ; exit; end

else

Sender.AsInteger:=StrToInt( Copy(text,1, a-1) );

end;

procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean); // вопрос о закрытии программы

begin

if MessageDlg('Закрыть программу ? ', mtConfirmation,

[mbOk, mbCancel], 0) = mrCancel then

CanClose := False else

application.Terminate;

end;

procedure TForm1.c1Click(Sender: TObject);

begin

close;

end;

procedure TForm1.N11Click(Sender: TObject);

begin

form10.show;

end;

procedure TForm1.BitBtn4Click(Sender: TObject);

begin

form2.show;

end;

procedure TForm1.BitBtn7Click(Sender: TObject);

begin

close;

end;

procedure TForm1.BitBtn8Click(Sender: TObject);

begin

form4.show;

end;

procedure TForm1.RadioButton1Click(Sender: TObject);

begin

end;

procedure TForm1.GridToExcel( DBGridv : TDBGrid);

const

Cr: String = Char(13) + Char(10);

CellIndent : Integer = 50;

var

CellWidth : Integer ;

//Индекс столбца таблицы.

ColNum : Integer;

//Индекс строки таблицы.

RowNum : Integer;

StrRtf : String;

col, row: Integer;

st,sline: string;

mem: TRichEdit;

a,i,j: Integer;

bm: TBookmark;

begin

if DBGridv.FieldCount=0 then exit;

Screen.Cursor := crHourglass DBGridv.DataSource.DataSet.DisableControls;

bm := DBGridv.DataSource.DataSet.GetBookmark;

DBGridv.DataSource.DataSet.First;

mem := form5.DBRichEdit1;

mem.Font.Pitch:=fpFixed;

mem.Clear;

CellWidth:=3000;

StrRtf := '{\rtf1\ansi\ansicpg1251' + Cr;

for RowNum := -1 to DBGridv.DataSource.DataSet.RecordCount-1 do begin

StrRtf := StrRtf + '\trowd\trgaph' + IntToStr(CellIndent) + CR;

i := 0;

for ColNum := 0 to DBGridv.FieldCount-1 do begin

if i<1 then CellWidth:=3000 else CellWidth:=3000;

Inc(i);

StrRtf :=

StrRtf

+ '\clbrdrt\brdrs\clbrdrl\brdrs\clbrdrb\brdrs\clbrdrr\brdrs\cellx'

+ IntToStr(i*CellWidth) + Cr;

end;

StrRtf := StrRtf + '\pard\intbl' + Cr;

for ColNum := 0 to DBGridv.FieldCount-1 do begin

if RowNum=-1 then

StrRtf := StrRtf + ' {\b'+LeftStr(DBGridv.Fields[colnum].DisplayLabel,20)+ '} ' + '\cell' + Cr

else

StrRtf := StrRtf + LeftStr(DBGridv.Fields[colnum].DisplayText,22) + '\cell' + Cr;

end;

if RowNum<>-1 then

DBGridv.DataSource.DataSet.Next;

StrRtf := StrRtf + '\row' + Cr; end;

StrRtf := StrRtf + '}';

mem.Text:=StrRtf;

mem.Refresh;

Screen.Cursor := crDefault;

DBGridv.DataSource.DataSet.GotoBookmark(bm);

DBGridv.DataSource.DataSet.FreeBookmark(bm);

DBGridv.DataSource.DataSet.EnableControls;

form5.Show; end;

procedure TForm1.BitBtn6Click(Sender: TObject);

begin

form10.show;

end;

procedure TForm1.BitBtn2Click(Sender: TObject);

begin

form4.Show;

end;

procedure TForm1.BitBtn1Click(Sender: TObject);

begin

form6.show;

end;

end.
1   2   3   4   5   6   7


написать администратору сайта