Автор: Пользователь скрыл имя, 25 Марта 2012 в 19:05, отчет по практике
Системный администратор и программиcт вместе с сотрудниками других отделов участвует в составлении технического задания(проектирование программных продуктов) на модификацию. На основании технического задания модифицирует существующие программы, создает новые. Проводит ответную эксплуатацию программ и всего парка ПК. Вносит предложения по улучшению работы программного обеспечения.
ВВЕДЕНИЕ
1.Структура отдела
2 Базы данных как средство хранения и обработки информации 4
2.1 Проектирование базы данных и нормализация
3. СРЕДА ПРОГРАММИРОВАНИЯ DELHPI 7.0
3.1.Описание языка
4. Задание от ВУЗа………………………………………………………………14
5. Задание от БАНКА……………………………………………………………21
6. ТЕХНИКА БЕЗОПАСНОСТИ 22
ЗАКЛЮЧЕНИЕ 24
Список использованной литературы 25
Согласно терминологии ADO, любой источник данных (база данных, электронная таблица, файл) называется хранилищем данных, с которым при помощи провайдера данных взаимодействует приложение. Минимальный набор компонентов приложения может включать объект соединения, объект набора данных, объект процессора запросов.
Объекты OLE DB создаются и функционируют так же, как и другие объекты СОМ. Каждому объекту соответствует идентификатор класса CLSID, хранящийся в системном реестре. Для создания объекта используется метод CoCreateinstance и соответствующая фабрика класса. Объекту соответствует набор интерфейсов, к методам которых можно обращаться после создания объекта. В результате приложение обращается не прямо к источнику данных, а к объекту OLE DB, который "умеет" представить данные (например, из файла электронной почты) в виде таблицы БД или результата выполнения запроса SQL.
Технология ADO в целом включает в себя не только сами объекты OLE DB, но и механизмы, обеспечивающие взаимодействие объектов с данными и приложениями. На этом уровне важнейшую роль играют провайдеры ADO, координирующие работу приложений с хранилищами данных различных типов.
Такая архитектура позволяет сделать набор объектов и интерфейсов открытым и расширяемым. Набор объектов и соответствующий провайдер может быть создан для любого хранилища данных без внесения изменений в исходную структуру ADO. При этом существенно расширяется само понятие данных — ведь можно разработать набор объектов и интерфейсов и для нетрадиционных табличных данных. Например, это могут быть графические данные геоинформационных систем, древовидные структуры из системных реестров, данные CASE-инструментов и т. д.
Так как технология ADO основана на стандартных интерфейсах СОМ, которые являются системным механизмом Windows, это сокращает общий объем работающего программного кода и позволяет распространять приложения БД без вспомогательных программ и библиотек.
Задание:
Создать базу данных используя среду разработки Delphi 7.0. Мной создана БД «Переводы без открытия счета». В качестве СУБД используется Microsoft Acces 2000. Данная СУБД была выбрана по следующим причинам:
простота средств реализации,
легкость освоения инструментарием разработчика (VBA),
наглядность визуализации информации.
По для управления базой написано на Delphi 7,этот язык программирования позволяет создавать эффективные приложения Windows, работающие с базами данных, в том числе и программы для систем клиент/сервер .Преимуществом приложений, разрабатываемых в среде Delphi 7.0,- стала доступность использования как реляционного, так и навигационного программирования при работе с данными.
4.1 База данных «Переводы без открытия счета»
Данная программа предназначена для переводы денежных средств без открытия лицевого счета. Интерфейс программы:
Рис 4.1 Переводы без открытия счета
В первой вкладке заполняются личные данные плательщика и получателя, с помощью кнопок «отправители» и «получатели» можно найти(если есть в списке) и вставить в основное поле данные клиентов. Для добавления новой записи, следует нажать кнопку «+». При добавлении новой записи в таблицу master в поле data и time записывается текущая дата и время. На второй вкладке заполняются данные о банке(служебные данные), обязательно надо выбрать с помощью Dbcombobox , процентную ставку(комиссию за перевод) и только после этого посчитается комиссия – (функция onMouseDown).
Рис 4.2 Переводы без открытия счета
Далее обязательно нажать на «Сохранить» для сохранение новой записи. След. шагом является печать извещения, по умолчанию стоит текущая дата, но есть возможность изменить ее.
Обязательно в меню Настройки в пункте Параметры надо указать реквизиты банка!!!
В данной БД предусмотрена печать реестров(своего вида отчеты по платежам). Для печати реестра надо выбрать пункт «Реестр» из меню «Реестры и выгрузки», затем выбрать дату и сформировать документ.
После того как распечатан реестр, обязательно надо сделать выгрузку
Рис 4.1 Выгрузка
для последующей загрузки их в АБС(автоматизированная банковская система)
Предусмотрена резервирование бд с последующим восстановлением. Резерв бд осуществляется в ручную с помощью пункта «Резервная копия» из меню «Настройки». Для восстановление базы – выбрать пункт «Восстановление базы» и ввести слово ОК на латинском языке, это сделано для предотвращение случайного постановления бд. Как только введено слово ОК, появиться кнопка «Восстановление базы»
Функция блокирования служит для блокирования бд при отсутствии на месте кассира (например в обеденный перерыв). Вызывается функция в ручную, для этого надо нажать на панели кнопку с рисунком «ключика».
При этом произойдет блокирование программы, пароль 123 (создается индивидуально для каждого рабочего места во время разработки) .
Так же для входа в программу требуется ввод логина и пароля (создается индивидуально для каждого рабочего места во время разработки) Логин Kassa , пароль cBr_95.
4.1.1 Наиболее важные участки кода программа
Модуль главной формы:
begin
dbase.Qmaster.Cancel; //отмена запроса
close;
end;
begin
if dbase.qmaster.modified then // если изменено, то сохранить(редактирование).
dbase.qmaster.Post;
end;
begin
if Application.MessageBox(PChar('
MB_OKCANCEL)=id_OK then //удаление записи
dbase.qmaster.Delete;
end;
Резервирование базы:
begin
if FileExists('c:\Indigo\backup\
DeleteFile('c:\Indigo\backup\
if CopyFile('c:\Indigo\main_.mdb'
ShowMessage('Файл успешно скопирован!')
else
ShowMessage('Ошибка! Код ошибки '+IntToStr(GetLastError));
end;
Вычисление коммисии:
dbase.qmaster.Edit;
if dbase.qmaster.FieldByName('
p:=dbase.qmaster.FieldByName('
plata:=dbase.qmaster.
comis:=p*plata/100;
dbase.qmaster.FieldByName('
Вызов справки:
ShellExecute(Handle,nil,'/
Модуль восстановления бд:
Востановление БД
begin
dbase.connect.Connected:=
if FileExists('c:\Indigo\main_.
begin
CopyFile('c:\Indigo\main_.mdb'
DeleteFile('c:\Indigo\main_.
if CopyFile('c:\Indigo\backup\
ShowMessage('База востановлена!!!Программу нужно переоткрыть!!!')
else
ShowMessage('Ошибка при востановлении базы! Код ошибки '+IntToStr(GetLastError)+'
end;
bbck.Visible:=false;
ebakcup.text:='';
dbase.connect.Connected:=true;
close;
myForm.close;
Проверка: не случайно ли восстанавливается бд
if ebakcup.Text='OK' then
bbck.Visible:=true;
Модуль блокирования программы
var x,y:string;
begin
x:='123';
y:=edita.text;
try
if y=x then
begin
fmain.PageControl.Visible:=
close;
end
else
t:=t+1; // если попыток ввода пароля равна 3-м то выход из программы
if t=3 then
begin
myform.close;
edita.Text:='';
end
else
edita.Text:='';
except
end;
end;
Модуль списка «клиентов»:
dbase.qmaster.Edit;
dbase.qmaster.FieldByName('
dbase.qmaster.FieldByName('
Поиск по ФИО:
Dbase.qfin.Active:=false;
Dbase.qfin.SQL.Clear;
Dbase.qfin.SQL.Add('SELECT * ');
Dbase.qfin.SQL.Add('FROM chast_poluch');
Dbase.qfin.SQL.Add('WHERE ch_PoluchName like');
Dbase.qfin.SQL.Add(QuotedStr('
Dbase.qfin.Active:=true;
qfindes.showmodal;
Добавление даты в поле – data:
dbase.qmaster.FieldByName('
Запрос с параметров:
begin
Dbase.qizv.Active:=false;
Dbase.qizv.Parameters.
Dbase.qizv.Active:=true;
fizv.QuickRep1.PreviewModal;
close;
end;
Авторизация:
Алгоритм дешифровывания и обработка введенного пароля и логина:
const
dw_=#90#11#155#155#11;
dd_=#27#18#147#250#201#201#
var
myForm: TmyForm;
digi,str:string;
procedure DecryptString(Str: PChar);
asm
@next:
cmp byte ptr [eax],0;
jz @stop;
ror byte ptr [eax],3;
inc eax;
jmp @next;
@stop:
end;
procedure Print(str: String);
begin
UniqueString(str); //создание копии строки в памяти(для защиты от дампинга памяти)
DecryptString(PChar(str));
Write(str);
end;
procedure TmyForm.bOKClick(Sender: TObject);
var str,st,k,o:string;
begin
str:=dw_;
st:=dd_;
UniqueString(str);
UniqueString(st);
k:=lEdit.Text;
if length(k)=5 then //сравнивается сначала длина строки, а не сам пароль
begin
DecryptString(PChar(str));
if k=str then
o:=pedit.text;
if length(o)=5 then
DecryptString(PChar(st));
if k=str then
fmain.show
else close ;
end else close;
end;
Выгрузка данных в файл:
fs:= TStringList.Create();
Dbase.qupld.Active:=false;
Dbase.qupld.Parameters.
Dbase.qupld.Active:=true;
While dbase.qupld.FieldByName('
begin
str:='';
str:=dbase.qupld.FieldByName('
+dbase.qupld.FieldByName('fio'
+dbase.qupld.FieldByName('
+dbase.qupld.FieldByName('
+dbase.qupld.FieldByName('
+dbase.qupld.FieldByName('
dbase.qupld.Edit;
dbase.qupld.FieldByName('
fs.Add(str);
fs.SaveToFile('upload_'+
dbase.qupld.Next;
end;
if fileExists('upload_'+
ShowMessage('Выгружено...');
bshow.Visible:=true;
end;
Справочные функции, переход на сайт программы:
webbrowser1.Navigate('http://
5.ЗАДАНИЕ ОТ БАНКА
Задание:
Установить и настроить второй резервный сервер. Конфигурация сервера: дисковое пространство – RAID0, ОС совместимая с главными и резервными серверами. Сервер должен: в определенное время скопировать бд с сервера «А», после запустить базу. Должна быть установлена и настроена система безопасности.
Решение:
Собрал ПК. Настроил на нем RAID0 для обеспечения сохранности данных и увеличение быстродействия компьютера. Далее установил ОС, настроил сетевую карту. Протянул сетевой кабель от сервера к хабу, присвоил ip адрес. Установил и настроил СУБД. Написал скрипт для копирования базы данных. Настроил систему безопасности (файервол). Настроил SSH сервис для удаленного администрирования. Сгенерировал ключи для аутентификации в системе. На сервере настроил общий доступ к некоторым ресурсам сервера. Опечатал сервер.
6.Техника безопасности
1. Общие положения.
1 1 Настоящая инструкция разработана для персонала занятого эксплуатацией персональных электронно-вычислительных машин (ПЭВМ) и для работников, использующих ПЭВМ для набора и распечатки документов, ведения баз данных.
1.2 Работа на ПЭВМ относится к категории работ, связанных с опасными и
вредными условиями труда. К ним относятся следующие вредные
производственные факторы:
- повышенные уровни электромагнитного излучения;
- рентгеновское излучение;
- повышенные уровни ультрафиолетового и инфракрасного излучения; статическое электричество;
запыленность воздуха, повышенное содержание в воздухе
положительных аэроионов и пониженное - отрицательных;
пониженный уровень освещенности;
эмоциональные и интеллектуальные нагрузки, напряжение зрения и
внимания; монотонность труда;
большой объем информации, обрабатываемой в единицу времени.
1.3 К работам на ПЭВМ допускаются лица не моложе 18 лет, прошедшие:
- медицинское освидетельствование на предмет пригодности для работы на
ПЭВМ в соответствии с требованиями приказа Минздрава РФ №90 и
Госкомсанэпидемнадзором РФ №280/88;
вводный инструктаж по охране труда;
- обучение безопасным приемам и методам труда на рабочем месте;
- проверку знаний на I группу по электробезопасности.
1.4 На основании требований п.10.3. санитарных правил и норм "Гигиенические требования к видео-дисплейным терминалам, персональным электронно-вычислительным машинам и организация работы" СанПиН 2.2.2.542-96 "женщины со времени установления беременности и в период кормления ребенка грудью к выполнению всех видов работ, связанных с использованием ПЭВМ, не допускаются".
Информация о работе Отчет о прохождении производственной практики в ЗАО АКБ «Кавказ - Гелиос»