Создание программы "Библиотека"

Технико-экономическое обоснование системы "Библиотека", назначение и область применения баз данных. Описание интерфейса, форм и спецификаций системы "Библиотека", разработка алгоритма, аппаратных и программных средств. Инсталляция системы "Библиотека".

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 18.09.2018
Размер файла 508,7 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Так как площадь рассматриваемого помещения составляет 28 м2, объем помещения - 70 м3, а максимальное число одновременно работающих - 2 человека, то на одного работающего приходится площадь 14 м2 и объем производственного помещения - 35 м3. Эти значения соответствуют требуемым параметрам.

Условия среды помещений определяются действующими на организм человека сочетаниями температуры, влажности и скорости движения воздуха и теплового облучения. Допустимые параметры, определяющие условия труда на рабочем месте, могут вызывать переходящие и быстро нормализующиеся изменения функционального и теплового состояния организма и напряжение реакции терморегуляции, не выходящие за пределы физиологической приспособленности организма, не создающие нарушений состояния здоровья, но вызывающие дискомфортные ощущения, ухудшение самочувствия и снижение работоспособности. Концентрация пыли в воздухе составляет не более 0,5 мг/м3. Оптимальные и допустимые параметры для рабочей зоны производственных помещений (то есть для пространства высотой до 2 м над уровнем пола). Выполняемые на рабочем месте работы относятся к категории легких физических с затратой энергии до 120 Ккал/ч (категория I), а рассматриваемое помещение - к помещениям с незначительными избытками явной теплоты (до 23 Вт/м2). Оптимальные параметры микроклимата приведены в таблице 8:

Таблица 8. Оптимальные нормы температуры, влажности и скорости движения воздуха в рабочей зоне производственных помещений

Период года

Категория работ

Температура, °С

Влажность, %

Скорость воздуха, м/с не более

Холодный

I

21-24

60-40

0,1

Теплый

I

22-25

60-40

0,1; 0,2

Для обеспечения микроклиматических условий труда в помещении имеется система отопления и вентиляции,что обеспечивает поддержание оптимальных условий труда на рабочем месте.

Освещение рабочих мест. Свет имеет исключительно важное значение для человека, обеспечивая связь организма с окружающей средой.

В рассматриваемом помещении используется одностороннее естественное фронтальное освещение, осуществляемое через одно окно общей площадью 3 м2. Считается, что при работе с дисплеями площадь световых проемов в помещении должна составлять 25% площади пола. Площадь помещения 28 м2, значит, площадь световых проемов должна составлять 7 м2. Отсюда следует, что естественное освещение соответствует условиям труда.

Высота потолка и размещение светильников обеспечивают угол падения света, исключающий отраженную блескость; отсутствие прямой блескости обеспечивается оптимальным взаимным расположением рабочих мест и ламп дневного света. Кроме того, окраска мебели и цвет обоев исключает интенсивное отражение света.

Таким образом, освещение рабочего места соответствует нормам.

Анализ воздействия электромагнитных излучений. Основным источником различного вида излучений на рабочем месте являются мониторы. Их спектр излучения включает в себя рентгеновскую, ультрафиолетовую и инфракрасную области излучений, а также широкий диапазон электромагнитных волн более низких частот. Из вышеперечисленных излучений наиболее опасно рентгеновское, которое обладает большой проницаемостью.

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

Рекомендуется применение мониторов, удовлетворяющих стандарту безопасности MPR II.

Максимальная напряженность на кожухе монитора Samsung SyncMaster 510s, который соответствует стандарту MPR II, составляет по паспортным данным 3,6 В/м, что соответствует фоновому уровню.

Интенсивность электромагнитного излучения в 5 см от экрана составляет 64 В/м, но на расстоянии 30 см, не превышает 2,4 В/м, что ниже, чем допустимый уровень. Это же можно сказать и об интенсивности ультрафиолетового и инфракрасного излучения.

Таким образом, при работе на расстоянии 40 - 50 см от экрана дисплея вредное воздействие исключено.

Анализ электробезопасности на рабочем месте. Электрический ток, действуя на организм человека, может вызвать нарушения его деятельности, вплоть до летального исхода. Тяжесть поражения определяется величиной протекающего через тело человека тока, частотой тока, длительностью протекания и другими факторами.

Рассматриваемое помещение относится к классу помещений без повышенной опасности поражения электрическим током, так как в данном помещении отсутствуют признаки повышенной или особой опасности (влажности, проводящей пыли, токоведущих оснований (металлических, земляных), повышенной температуры (длительное превышение 35 С или кратковременное превышение 40С) и т.д.

Возникновению вышеперечисленных факторов препятствуют:

соблюдение требований охраны труда на рабочем месте;

характер работ в помещении;

использование в качестве покрытия пола дерева.

Применяемая техника (компьютеры PC и принтеры HP Laser Jet 1100) относятся к электроустановкам напряжением до 1000 В, питание которых осуществляется от сети однофазного переменного тока напряжением 220 В, частотой 50 Гц. Напряжение подается через автоматический выключатель с силовым расцепителем, имеющим ток срабатывания 25 А. В мониторах компьютеров имеются и более высокие напряжения (до 25 кВ), которые надежно изолированы от оператора и не могут представлять опасности, доступ к цепям с таким напряжением возможен лишь при проведении ремонтных работ, которые осуществляются в специализированных ремонтных организациях специально подготовленным персоналом.

Устранить опасность поражения током при замыкании на корпус можно с помощью установки в помещении нулевого защитного проводника.

Занулением называется преднамеренное электрическое соединение с нулевым защитным проводником металлических нетоковедущих частей оборудования, которые могут оказаться под напряжением.

Нулевым защитным проводником называется проводник, соединяющий зануляемые части с глухозаземленной нейтральной точки источника питания или ее эквивалентом. Назначение нулевого защитного проводника - создание для тока короткого замыкания цепи с малым сопротивлением, чтобы этот ток был достаточным для быстрого срабатывания защиты, то есть быстрого отключения поврежденной установки от сети.

Кроме того, на рабочем месте человека работающего за персональным компьютером необходимо обеспечить защиту от статического электричества.

В вычислительных центрах разрядные токи статического электричества чаще всего возникают при прикосновении обслуживающего персонала к любому из элементов компьютера. Такие разряды могут привести к выходу из строя компьютера. Они оказывают неблагоприятное воздействие на работающих, ухудшают условия труда.

Для снижения величины возникающих разрядов статического электричества в ВЦ, покрытие технологических полов следует выполнять из однослойного антистатического линолеума марки АСН. К общим мерам защиты от статического

электричества в ВЦ можно отнести увлажнение воздуха (до 75%), ионизацию воздуха. Из всего вышесказанного можно сделать вывод о том, что помещение удовлетворяет условиям обеспечения электробезопасности.

Пожарная профилактика. Пожар - это неконтролируемое горение, развивающееся во времени и пространстве. Понятие пожарной безопасности означает состояние объекта, при котором с установленной вероятностью исключается возможность возникновения и развития пожара с воздействием на людей опасных факторов, а также обеспечивается защита материальных ценностей. Опасными факторами пожара для людей являются:

* открытый огонь;

* повышенные температуры воздуха и предметов;

* токсичные продукты горения;

* дым;

* пониженная концентрация кислорода;

* взрыв и т. д.

Все помещения по пожарной и взрывоопасности делятся на пять категорий:

* А, Б - взрывопожароопасные;

* В, Г, Д - пожароопасные.

Данное помещение относится к категории В - горючие и трудно горючие помещения, в которых в обращении имеются жидкости, твердые, горючие и трудно горючие вещества и материалы, способные при взаимодействии с кислородом воздуха или друг другом только гореть, при условии что помещения, в которых они находятся, не относятся к категориям А и Б.

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

Противопожарная профилактика:

наличие двух ручных порошковых огнетушителей, марки ОП-2М, предназначенных для тушения загорания с расстояния 2 м, при температуре 40-50 °С. Огнетушители хранятся в защищенном от солнечных лучей и нагревательных приборов месте, хорошо доступном при возникновении возгорания;

для отопления помещений используется центральное водяное отопление;

установлена система электрической пожарной сигнализации, два тепловых пожарных излучателя реагируют на повышение температуры окружающей среды до значения 80°С и выше в радиусе 3 м. Для помещений вычислительных центров рекомендуется использовать тепловые пожарные излучатели типа ДТЛ, АТП-ЗМ и др.;

помещение расположено в здании таким образом, что имеется как минимум два пути эвакуации, один из которых не может быть перекрыт огнем - пожарная лестница.

Анализ шума на рабочем месте. Шум - любой нежелательный для человека звук. Сильный шум в условиях производства снижает производительность труда до 40 - 60% и может явиться причиной несчастного случая. Нормируемой шумовой характеристикой рабочих мест при постоянном шуме является уровень звукового давления в октавных полосах, выраженный в децибелах. Совокупность таких уровней называется предельным спектром ПС, номер которого численно равен уровню звукового давления в октавной полосе со среднегеометрической частотой 1000 Гц.

В помещении установлено 2 компьютера 1 лазерный принтер. Уровень шума, издаваемый компьютером, составляет около 10 дБА, издаваемый принтером - около 15 дБА. Принтер является источником «механического» шума, вызванного бумагоподающим механизмом. Компьютер генерирует в основном аэродинамический шум, вызванный движением воздуха в системе охлаждения машины. Суммарный уровень шума, получаемый в результате наложения звуковых волн друг на друга, в рассматриваемом помещении составит 45 дБА, что ниже минимального уровня 50 дБА.

Эргономические требования. Персональный компьютер спроектирован с учетом необходимых для работы эргономических требований:

* имеется возможность поворота дисплея в горизонтальной и вертикальной плоскостях;

* нет жесткой связи клавиатуры с дисплеем;

* существует возможность регулировки яркости и контрастности на дисплее;

* обеспечивается удобное расположение кнопок на панели компьютера;

* клавиатура обеспечивает удобный угол наклона к поверхности стола - 150;

* мягкость нажатий клавиш на клавиатуре.

Принтер HP 1100 также удовлетворяет ряду эргономических требований:

* красивое оформление и окраска мягкого цвета;

* удобное расположение кнопок управления;

* простота и удобство смены картриджа;

* небольшие усилия при работе;

Рабочие места оборудованы легкими стульями, высота сиденья регулируется. Рабочий стол оператора имеет габариты: длина 1,25 м; ширина 0,7 м; высота 0,8 м. Высота поверхности не регулируется, что допускается нормами.

Вышеперечисленные характеристики обеспечивают минимальные затраты мускульной и нервной энергии оператора. Также обеспечивается рациональный режим труда и отдыха, установленный с учетом психофизической напряженности труда, динамики функционального состояния систем организма и работоспособности, кроме того предусматривается строгое соблюдение регламентированных перерывов. Для поддержания нормальной работоспособности работников рекомендуется продолжительность работы с монитором не более 50% рабочего времени, при этом время непрерывной работы не более 1,5-2 часов; время перерыва -15 мин.; и также время перерыв на обед - 40 мин. Все вышеперечисленные мероприятия по режиму работы и отдыха соблюдаются.

Рациональное цветовое оформление помещения направлено на улучшение санитарно-гигиенических условий труда, повышения его производительности и безопасности. Окраска производственных помещений влияет на нервную систему человека, его настроение, а также играет важную роль при организации системы освещения. Окраска стен не раздражает глаз и гармонирует с цветом технических средств.

3.2 Экономическая эффективность реализации проекта системы «Библиотека»

Формулы расчета затрат на проектирование системы:

,

где

- зарплата проектировщика;

- зарплата программиста;

- затраченное время;

- накладные расходы;

- прочие расходы;

О- отчисления (30% от суммы , и 10% в Пенсионный фонд).

Время на реализацию было затрачено: ЗВ= 2 месяца;

На разработку программы ушел 1 месяц;

На написание программы- 2 месяца.

Заработная плата специалистов по проектированию и разработке программного обеспечения за один месяц.

Фонд заработной платы проектировщика:

,

где

- общий фонд заработной платы проектировщиков,

- количество проектировщиков,

- заработная плата проектировщиков.

Фонд заработной платы программиста:

,

где

- общий фонд заработной платы программистов,

- количество программистов,

- заработная плата программистов.

В соответствии со штатным расписанием, заработная плата для проектировщика была назначена 35000 тг.,

программиста- 40000 тг.

Отчисления, таким образом, составляют:

О=0,3*(35000+40000)=22500тг.

Накладные расходы, связанные с выполнение нескольких тем по управлению и организации научно-исследовательских работ. Они включают:

- заработную плату руководителя проекта, с учетом отчислений на социальные нужды, за консультационный период составляют 5000 тг.;

- заработная плата консультантов, с учетом тех же отчислений, составляет 3500 тг.

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

,

где

- зарплата руководителя проекта;

- количество консультантов,

- заработная плата консультанта проекта.

О- отчисления (30% от суммы );

(10% отчисления в пенсионный фонд и 5% подоходный налог)

- затраченное время на проектирование системы.

Отчисления на социальные нужды консультантов составляют:

(2*3500)*0,3=2100 тг.

Отчисления руководителя, соответственно:

5000*0,3=1500 тг.

Тогда сумма накладных расходов будет равна:

=(5000+2*3500+(1500+2100))*2= 31200 тг.

Прочие расходы включают в себя затраты на:

- расходы на использование средств связи и передачи информации, в том числе, Интернет;

- приобретение материалов, необходимых для разработки программного обеспечения.

Формула их расчета такова:

,

где

- расходы на машинное время;

- расходы на средства связи.

Формула расчета затрат на машинное время такова:

,

где

- стоимость затрат одного часа машинного времени, 50 тг/ 1 час;

- используемое время на проектирование системы.

Машинное время составляет 480 часов (8 часов установленного рабочего дня* 60 дней).

Таким образом: 50*480=24000 тг.

Расходы за использование средств связи и передачи информации (Интернет):

- почасовая оплата 120 тг/ 1 час;

- время использование Интернета для поиска и передачи информации составило 3 часа в день.

Таким образом, затраты на Интернет составили:

120*3*60=21600 тг.

Итого 24000+21600=45600 тг.

Суммарные затраты на проектирование системы.

= (35000+40000+22500)*2+31200+45600=271800 тг.

Заключение

Главным результатом проведенной работы является создание системы «Библиотека», которая выполняет требуемый круг задач, с которыми сталкиваются работники библиотеки по учёту и поиску имеющихся книг, ведение абонементных карт.

Реализация данного проекта была проведена с привлечением мощного средства работы с базами данных СУБД Access, предназначенного для управления, проектирования и разработки баз данных.

Использование мощных средств Delphi 7 по созданию приложений, работающих в графической среде Windows, позволило создать системный продукт максимально ориентированный на конечного пользователя, который не искушен в вопросах теории баз данных.

Вся необходимая работа по осуществлению методов доступа к информации хранимой в базе данных, её модификации, поддержании базы данных в целостном виде скрыта внутри и пользователю нет необходимости знать о ней, чтобы успешно решать весь круг возникающих задач связанных с использованием информации хранимой базе данных. Более того, системный интерфейс максимально облегчает работу по обращению с базой данных (вплоть до выбора из предложенного числа вариантов по запросу пользователя). Даже обращение к базе данных со сложными запросами осуществляется в таком виде, что структура возвращаемых данных видна еще до его исполнения. СУБД Access самостоятельно тестирует находящиеся в базе данных записи и производит приведение базы данных к целостному состоянию, устраняя возможные ошибки. Все рутинные операции подобного рода берёт на себя система, что без сомнения экономит усилия и время конечного пользователя.

Система «Библиотека» помогает вести каталог книг, с помощью которого можно быстро и точно определить, какая книга требуется. Также можно произвести сортировку по разделам книги, что значительно ускорит поиск необходимой книги. Система «Библиотека» ведёт абонементные карты пользователей библиотеки, и все выбранные пользователем книги записываются в каталог взятых книг, что позволяет быстро и точно определить какая книга на руках. Все эти задачи решаются в рамках данной программы, с максимальной простотой, удобством и скоростью.

Все функции выполняемые программой были тщательным образом проверены и протестированы в процессе разработки. Данный продукт без сомнения может конкурировать с существующими программами организации и работы библиотеки.

Список использованной литературы

1. Немнюгин С.А. Turbo Dfmcal. - M.: Питер, 2000.

2. Культин Н.Б. Delphi 6. Программирование на Object Dfmcal. - M: Питер, 2002.

3. Гофман В.Э., Хомоненко А.Д. Delphi 6. - М: Питер, 2001.

4. Вирт. Н. Алгоритмы+структуры данных = программы.

5. Седжвик Р. Фундаментальные алгоритмы на С. - СПб: ООО «ДиаСофтЮП», 2003, - 1136 с.

6. Бордовский С.И. Delhi 7. Учебный курс. - М.: Питер, 2003, - 736 с.

7. Роб П., Корнел К. Системы баз данных: проектирование, реализация и управление. - 5-е изд., прераб. и доп.: Пер. с англ. - СПб.: БХВ-Петербург, 2004, - 1040 с.

8. Лавров С.С. Архитектура баз знаний // Программное обеспечение вычислительных комплексов новой архитектуры. - Новосибирск 1986.

9. Замулин. А.В. Системы программирования баз данных и баз знаний. - Новосибирск, 1990.

10. Ревунков Г.И. Базы и банки данных и знаний. - М. 1992 г.

11. Гофман В. Э., Хомоненко А.Д. Delphi 5. - СПб.: БХВ - Санкт-Петербург, 1999, - 800 с.

12. Гофман В.Э., Хомоненко А.Д. Работа с базами данных в Delphi - СПб.: БХВ-Петербург, 2000, - 656 с.

13. Матросов А.В., Сергеев А.О., Чаунин М.П. HTML 4.0 - СПБ.: БХВ-Петербург, 2000, - 672 с

14. Хомоненко А.Д., Цыганков Б.М., Мальцев М.Г. Базы данных: Учебник для высших учебных заведений. / Под ред. проф. А.Д.Хомоненко. - СПб.: КОРОНА принт, 2000, - 416 с.

15. Горев А, Рубен А, Макашарипов С. Эффективная работа с СУБД- СПБ.:Питер, 1997. - 704с.: ил.

Приложение

Текст программы

unit uMain;

interface

uses

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

Dialogs, Menus, ActnList, DB, ADODB, ComCtrls, Grids, DBGrids, StdCtrls,

DBCtrls;

type

TfmMain = class(TForm)

ActionList1: TActionList;

MainMenu1: TMainMenu;

StatusBar1: TStatusBar;

dsBook: TDataSource;

ADOConnection1: TADOConnection;

qBook: TADOQuery;

mnuUpdate1: TMenuItem;

mnuInsert: TMenuItem;

mnuUpdate: TMenuItem;

mnuDelete: TMenuItem;

actInsertBook: TAction;

actUpdateBook: TAction;

actDeleteBook: TAction;

Label1: TLabel;

Label2: TLabel;

dsKart: TDataSource;

tKart: TADOTable;

cbTables: TComboBox;

actInsertKart: TAction;

actUpdateKart: TAction;

actDeleteKart: TAction;

dbGrid: TDBGrid;

cbGenre: TComboBox;

btClear: TButton;

tKartKart_id: TAutoIncField;

tKartKart_Name: TWideStringField;

tKartKart_Family: TWideStringField;

tKartKart_Initial: TWideStringField;

tKartKart_Group: TWideStringField;

tKartKart_Birth: TDateTimeField;

tKartKart_Phone: TWideStringField;

qBookBook_id: TAutoIncField;

qBookBook_Author: TWideStringField;

qBookBook_title: TWideStringField;

qBookBook_year: TWideStringField;

qBookBook_Loc: TWideStringField;

qBookBook_Genre: TWideStringField;

actFind: TAction;

N2: TMenuItem;

tList: TADOTable;

dsList: TDataSource;

tListBook_id: TSmallintField;

tListKart_id: TSmallintField;

tListList_Take: TDateTimeField;

tListList_Back: TDateTimeField;

btPrint: TButton;

actInsertList: TAction;

actUpdateList: TAction;

actDeleteList: TAction;

procedure mnuExitClick(Sender: TObject);

procedure actInsertBookExecute(Sender: TObject);

procedure actUpdateBookExecute(Sender: TObject);

procedure actDeleteBookExecute(Sender: TObject);

procedure FormActivate(Sender: TObject);

procedure actInsertKartExecute(Sender: TObject);

procedure actUpdateKartExecute(Sender: TObject);

procedure actDeleteKartExecute(Sender: TObject);

procedure cbTablesChange(Sender: TObject);

procedure cbGenreChange(Sender: TObject);

procedure actFindExecute(Sender: TObject);

procedure btClearClick(Sender: TObject);

procedure actInsertListExecute(Sender: TObject);

procedure actUpdateListExecute(Sender: TObject);

procedure actDeleteListExecute(Sender: TObject);

procedure btPrintClick(Sender: TObject);

private

{ Private declarations }

public

end;

var

fmMain: TfmMain;

implementation

uses uBook, uKart, uFind, uList, uprint;

{$R *.dfm}

procedure TfmMain.mnuExitClick(Sender: TObject);

begin

Close;

end;

procedure TfmMain.actInsertBookExecute(Sender: TObject);

begin

fmBook.cbGenre.Text:= '';

dsBook.DataSet.Insert;

fmBook.cbGenre.ItemIndex:= -1;

fmBook.showmodal;

end;

procedure TfmMain.actUpdateBookExecute(Sender: TObject);

begin

fmBook.cbGenre.Text:= qBookBook_Genre.Text;

fmBook.showmodal;

end;

procedure TfmMain.actDeleteBookExecute(Sender: TObject);

begin

if MessageDlg('Вы действительно хотите удалить эту запись ?',mtWarning,[mbOK,mbCancel],0) = mrOk then

dsBook.DataSet.Delete;

end;

const

Provider = 'MSDataShape.1';

DataProvider = 'Microsoft.Jet.OLEDB.4.0';

ConnStr = 'Provider=%s;Data Provider=%s;Data Source=%s';

procedure TfmMain.FormActivate(Sender: TObject);

var

DataSource: string;

begin

// создаем динамический псевдоним к базе

DataSource:= ExtractFilePath(Application.ExeName) + 'base\' + 'db.mdb';

if not ADOConnection1.Connected then begin

ADOConnection1.ConnectionString:= Format(ConnStr, [Provider, DataProvider, DataSource]);

qBook.Open;

tKart.Open;

tList.Open;

end;

end;

procedure TfmMain.actInsertKartExecute(Sender: TObject);

begin

dsKart.DataSet.Insert;

fmKart.showmodal;

end;

procedure TfmMain.actUpdateKartExecute(Sender: TObject);

begin

fmKart.ShowModal;

end;

procedure TfmMain.actDeleteKartExecute(Sender: TObject);

begin

{????? проверка на взятые книги?????}

if MessageDlg('Вы действительно хотите удалить эту запись ?',mtWarning,[mbOK,mbCancel],0) = mrOk then

dsKart.DataSet.Delete;

end;

procedure TfmMain.cbTablesChange(Sender: TObject);

begin

if mnuUpdate1.Enabled = false then

mnuUpdate1.Enabled:= true;

case cbTables.ItemIndex of

0: begin

dbGrid.DataSource:= dsBook;

btPrint.Visible:= false;

label2.Visible:= true;

cbGenre.Visible:= true;

btClear.Visible:= true;

mnuInsert.Action:= actInsertBook;

mnuUpdate.Action:= actUpdateBook;

mnuDelete.Action:= actDeleteBook; end;

1: begin

dbGrid.DataSource:= dsKart;

btPrint.Visible:= false;

label2.Visible:= false;

cbGenre.Visible:=false;

btClear.Visible:= false;

mnuInsert.Action:= actInsertKart;

mnuUpdate.Action:= actUpdateKart;

mnuDelete.Action:= actDeleteKart; end;

2: begin

dbGrid.DataSource:= dsList;

btPrint.Visible:= true;

label2.Visible:= false;

cbGenre.Visible:=false;

btClear.Visible:= false;

mnuInsert.Action:= actInsertList;

mnuUpdate.Action:= actUpdateList;

mnuDelete.Action:= actDeleteList; end;

end; {case of}

end;

procedure TfmMain.cbGenreChange(Sender: TObject);

begin

qBook.Filtered:= true;

qBook.Filter:= 'Book_Genre=' + ''''+cbGenre.Text+'''';

end;

procedure TfmMain.actFindExecute(Sender: TObject);

begin

fmFind.showmodal;

end;

procedure TfmMain.btClearClick(Sender: TObject);

begin

qBook.Filtered:= false;

end;

procedure TfmMain.actInsertListExecute(Sender: TObject);

begin

dsList.DataSet.Insert;

fmList.showmodal;

end;

procedure TfmMain.actUpdateListExecute(Sender: TObject);

begin

fmList.showmodal;

end;

procedure TfmMain.actDeleteListExecute(Sender: TObject);

begin

if MessageDlg('Вы действительно хотите удалить эту запись ?',mtWarning,[mbOK,mbCancel],0) = mrOk then

dsList.DataSet.Delete;

end;

procedure TfmMain.btPrintClick(Sender: TObject);

var

Rct: TRect;

begin

with fmPrint.Image1.Canvas do

begin

Brush.Style:= bsSolid;

Brush.Color:= clWhite;

GetWindowRect(Handle, Rct);

Rct.TopLeft:= ScreenToClient(Rct.TopLeft);

Rct.BottomRight:= ScreenToClient(Rct.BottomRight);

FillRect(Rct);

// Text

Brush.Style:= bsHorizontal;

Brush.Color:= clBlack;

Font.Size:= 12;

TextOut(10,10,'№ Книги ' + tListBook_id.Text);

TextOut(10,30,'№ Карточки ' + tListKart_id.Text);

TextOut(10,50,'Дата выдачи ' + tListList_Take.text);

TextOut(10,70,'Дата возврата ' + tListList_Back.Text);

end;

fmPrint.showmodal;

end;

end.

unit uBook;

interface

uses

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

Dialogs, StdCtrls, DBCtrls, Mask, Buttons, DB;

type

TfmBook = class(TForm)

Label1: TLabel;

bdeAuthor: TDBEdit;

bdeTitle: TDBEdit;

Label2: TLabel;

bdeYear: TDBEdit;

Label3: TLabel;

bdeLoc: TDBEdit;

Label4: TLabel;

Label6: TLabel;

btCancel: TButton;

btOk: TButton;

btAddGenre: TSpeedButton;

cbGenre: TComboBox;

procedure btAddGenreClick(Sender: TObject);

procedure btOkClick(Sender: TObject);

procedure btCancelClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

fmBook: TfmBook;

implementation

uses uGenre, uMain;

{$R *.dfm}

procedure TfmBook.btAddGenreClick(Sender: TObject);

begin

fmGenre.showmodal;

end;

procedure TfmBook.btOkClick(Sender: TObject);

begin

if fmMain.dsBook.DataSet.State in [dsEdit, dsInsert] then begin

try

fmMain.qBook.FieldByName('Book_Genre').AsString:= cbGenre.Text;

fmMain.dsBook.DataSet.Post;

except

on E: EDatabaseError do begin fmMain.dsBook.DataSet.cancel; MessageDlg('Ошибка!!!',mtError, [mbOk], 0); end;

end; {try}

end; {if }

fmMain.dsBook.DataSet.Refresh;

//fmmain.RefreshVievFilm;

//fmmain.lblCountRec.Caption:= 'Количество записей ' + inttostr(fmmain.dsFilmView.DataSet.RecordCount);

close;

end;

procedure TfmBook.btCancelClick(Sender: TObject);

begin

if fmMain.dsBook.DataSet.State in [dsEdit, dsInsert] then

fmMain.dsBook.DataSet.Cancel;

close;

end;

end.

unit uFind;

interface

uses

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

Dialogs, StdCtrls, db;

type

TfmFind = class(TForm)

btCancel: TButton;

btOk: TButton;

Edit1: TEdit;

ComboBox1: TComboBox;

Label1: TLabel;

procedure btCancelClick(Sender: TObject);

procedure FormShow(Sender: TObject);

procedure btOkClick(Sender: TObject);

procedure FormHide(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

fmFind: TfmFind;

implementation

uses

uMain;

{$R *.dfm}

procedure TfmFind.btCancelClick(Sender: TObject);

begin

close;

end;

procedure TfmFind.FormShow(Sender: TObject);

begin

if fmMain.dbGrid.DataSource = fmMain.dsBook then begin

ComboBox1.Items.Clear;

ComboBox1.Items.Add('Автору');

ComboBox1.Items.Add('Названию');

ComboBox1.ItemIndex:= 0;

end

else

if fmMain.dbGrid.DataSource = fmMain.dsKart then begin

ComboBox1.Items.Clear;

ComboBox1.Items.Add('Фамилии');

ComboBox1.Items.Add('Имени');

ComboBox1.ItemIndex:= 0;

end

else

if fmMain.dbGrid.DataSource = fmMain.dsList then begin

ComboBox1.Items.Clear;

ComboBox1.Items.Add('№ Карточки');

ComboBox1.Items.Add('№ Книги');

ComboBox1.Items.Add('Дате получения');

ComboBox1.Items.Add('Дате возврата');

ComboBox1.ItemIndex:= 0;

end

end;

procedure TfmFind.btOkClick(Sender: TObject);

begin

if fmMain.dbGrid.DataSource = fmMain.dsBook then begin

case ComboBox1.ItemIndex of

0: fmMain.qBook.Locate('Book_Author',Edit1.Text,[loCaseInsensitive,loPartialKey]);

1: fmMain.qBook.Locate('Book_Title',Edit1.Text,[loCaseInsensitive,loPartialKey]);

end;

end

else

if fmMain.dbGrid.DataSource = fmMain.dsKart then begin

case ComboBox1.ItemIndex of

0: fmMain.tKart.Locate('Kart_Family',Edit1.Text,[loCaseInsensitive,loPartialKey]);

1: fmMain.tKart.Locate('Kart_Name',Edit1.Text,[loCaseInsensitive,loPartialKey]);

end;

end

else

if fmMain.dbGrid.DataSource = fmMain.dsList then begin

case ComboBox1.ItemIndex of

0: fmMain.tList.Locate('Kart_id',Edit1.Text,[loCaseInsensitive,loPartialKey]);

1: fmMain.tList.Locate('Book_id',Edit1.Text,[loCaseInsensitive,loPartialKey]);

2: fmMain.tList.Locate('List_Take',Edit1.Text,[loCaseInsensitive,loPartialKey]);

3: fmMain.tList.Locate('KList_Back',Edit1.Text,[loCaseInsensitive,loPartialKey]);

end;

end;

close;

end;

procedure TfmFind.FormHide(Sender: TObject);

begin

edit1.Text:= '';

end;

end.

unit uGenre;

interface

uses

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

Dialogs, StdCtrls, DBCtrls;

type

TfmGenre = class(TForm)

btInsert: TButton;

btUpdate: TButton;

btDelete: TButton;

btClose: TButton;

ListBox1: TListBox;

procedure btCloseClick(Sender: TObject);

procedure btInsertClick(Sender: TObject);

procedure btUpdateClick(Sender: TObject);

procedure btDeleteClick(Sender: TObject);

procedure FormDestroy(Sender: TObject);

procedure FormCreate(Sender: TObject);

private

{ Private declarations }

public

procedure UpdateComboBoxes;

end;

var

fmGenre: TfmGenre;

implementation

uses

uMain, uUpdate, uBook;

{$R *.dfm}

procedure TfmGenre.btCloseClick(Sender: TObject);

begin

close;

end;

procedure TfmGenre.btInsertClick(Sender: TObject);

begin

fmUpdate.Edit1.Text:= '';

if fmUpdate.ShowModal = 1 then begin ListBox1.items.Add(fmUpdate.Edit1.Text);

UpdateComboBoxes;

end;

end;

procedure TfmGenre.btUpdateClick(Sender: TObject);

var

i,

buf: byte;

begin

for i:= 0 to listbox1.Items.Count-1 do begin

if listbox1.Selected[i] then begin

buf:= i;

fmUpdate.Edit1.Text:= listbox1.Items.Strings[buf];

break;

end;

end;

if fmUpdate.ShowModal = 1 then begin

listbox1.Items.Strings[buf]:= fmUpdate.Edit1.Text;

UpdateComboBoxes;

end;

end;

procedure TfmGenre.btDeleteClick(Sender: TObject);

var

i: byte;

begin

for i:= 0 to listbox1.Items.Count-1 do begin

if listbox1.Selected[i] then begin

listbox1.Items.Delete(i);

break;

end;

end;

UpdateComboBoxes;

end;

procedure TfmGenre.UpdateComboBoxes;

begin

fmBook.cbGenre.Items.Assign(ListBox1.Items);

fmMain.cbGenre.Items.Assign(ListBox1.Items);

end;

procedure TfmGenre.FormDestroy(Sender: TObject);

begin

ListBox1.Items.SaveToFile('list.txt');

end;

procedure TfmGenre.FormCreate(Sender: TObject);

begin

Listbox1.Items.LoadFromFile('list.txt');

UpdateComboBoxes;

end;

end.

unit uKart;

interface

uses

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

Dialogs, StdCtrls, Mask, DBCtrls, DB, ToolEdit, RXDBCtrl;

type

TfmKart = class(TForm)

dbeName: TDBEdit;

Label1: TLabel;

Label2: TLabel;

dbeFamily: TDBEdit;

Label3: TLabel;

dbeInitial: TDBEdit;

Label4: TLabel;

Label5: TLabel;

dbeGroup: TDBEdit;

Label6: TLabel;

dbePhone: TDBEdit;

btOk: TButton;

btCancel: TButton;

dbeBirth: TDBDateEdit;

procedure btOkClick(Sender: TObject);

procedure btCancelClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

fmKart: TfmKart;

implementation

uses

uMain;

{$R *.dfm}

procedure TfmKart.btOkClick(Sender: TObject);

begin

if fmMain.dsKart.DataSet.State in [dsEdit, dsInsert] then begin

try

fmMain.dsKart.DataSet.Post;

except

on E: EDatabaseError do begin fmMain.dsKart.DataSet.cancel; MessageDlg('Ошибка!!!',mtError, [mbOk], 0); end;

end; {try}

end; {if }

fmMain.dsKart.DataSet.Refresh;

close;

end;

procedure TfmKart.btCancelClick(Sender: TObject);

begin

if fmMain.dsKart.DataSet.State in [dsEdit, dsInsert] then

fmMain.dsKart.DataSet.Cancel;

close;

end;

end.

unit uList;

interface

uses

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

Dialogs, StdCtrls, DBCtrls, Mask, ToolEdit, RXDBCtrl,DB;

type

TfmList = class(TForm)

DBDateTake: TDBDateEdit;

DBDateBack: TDBDateEdit;

DBEBook: TDBEdit;

DBEKart: TDBEdit;

btCancel: TButton;

btOK: TButton;

Label1: TLabel;

Label2: TLabel;

procedure btOKClick(Sender: TObject);

procedure btCancelClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

fmList: TfmList;

implementation

uses umain;

{$R *.dfm}

procedure TfmList.btOKClick(Sender: TObject);

begin

if fmMain.dsList.DataSet.State in [dsEdit, dsInsert] then begin

try

fmMain.dsList.DataSet.Post;

except

on E: EDatabaseError do begin fmMain.dsKart.DataSet.cancel; MessageDlg('+°шсър!!!',mtError, [mbOk], 0); end;

end; {try}

end; {if }

fmMain.dsList.DataSet.Refresh;

close;

end;

procedure TfmList.btCancelClick(Sender: TObject);

begin

if fmMain.dsList.DataSet.State in [dsEdit, dsInsert] then

fmMain.dsList.DataSet.Cancel;

close;

end;

end.

unit uprint;

interface

uses

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

Dialogs, StdCtrls, ExtCtrls;

type

TfmPrint = class(TForm)

PrinterSetupDialog1: TPrinterSetupDialog;

Panel2: TPanel;

btPrint: TButton;

btSetup: TButton;

btCancel: TButton;

Image1: TImage;

procedure btSetupClick(Sender: TObject);

procedure btCancelClick(Sender: TObject);

procedure btPrintClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

fmPrint: TfmPrint;

implementation

uses

printers, umain;

{$R *.dfm}

procedure TfmPrint.btSetupClick(Sender: TObject);

begin

PrinterSetupDialog1.Execute;

end;

procedure TfmPrint.btCancelClick(Sender: TObject);

begin

Close;

end;

procedure TfmPrint.btPrintClick(Sender: TObject);

begin

Printer.BeginDoc;

//Printer.Canvas.Draw(10, 10, image1.Picture.Graphic);

//Printer.Canvas.Font.Height:= 18;

Printer.Canvas.Font.Size:= 12;

Printer.Canvas.TextOut(100,100,'№ Книги ' + fmMain.tListBook_id.Text);

Printer.Canvas.TextOut(100,300,'№ Карточки ' + fmMain.tListKart_id.Text);

Printer.Canvas.TextOut(100,500,'Дата выдачи ' + fmMain.tListList_Take.text);

Printer.Canvas.TextOut(100,700,'Дата возврата ' + fmMain.tListList_Back.Text);

Printer.EndDoc;

end;

end.

unit uUpdate;

interface

uses

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

Dialogs, StdCtrls, Mask, DBCtrls, DB;

type

TfmUpdate = class(TForm)

btOk: TButton;

btCancel: TButton;

Edit1: TEdit;

procedure btCancelClick(Sender: TObject);

procedure btOkClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

fmUpdate: TfmUpdate;

implementation

uses uMain;

{$R *.dfm}

procedure TfmUpdate.btCancelClick(Sender: TObject);

begin

fmupdate.ModalResult:= 0;

close;

end;

procedure TfmUpdate.btOkClick(Sender: TObject);

begin

fmupdate.ModalResult:= 1;

// close;

end;

end.

Размещено на Allbest.ru

...

Подобные документы

  • Рассмотрение теоретических аспектов создания баз данных с применением системы объектно-ориентированного программирования Delphi. Ознакомление с компонентами доступа. Разработка базы данных "Библиотека". Описание основ интерфейса созданной программы.

    курсовая работа [1004,9 K], добавлен 26.10.2014

  • Разработка программы для работы с базой данных "Библиотека" в среде Borland C++Builder 6 на языке программирования C++ с использованием визуальных средств. Структура информации, подключение к ней и ее отображение. Описание пользовательского интерфейса.

    курсовая работа [1,5 M], добавлен 19.05.2014

  • Анализ предметной области. Основание, назначение для разработки, требования к программному средству. Выбор подхода и модели разработки ПС. Анализ требований, разработка и определение вариантов спецификаций. Описание объектов, свойств и методов.

    курсовая работа [510,3 K], добавлен 23.02.2011

  • Разработка модуля регистрации абонентов для информационной системы предприятия "Библиотека". Структура базы данных. Взаимодействие клиентов с БД и клиентов друг с другом. Форма регистрации, сохранение данных. Основные сущности данного приложения.

    курсовая работа [991,4 K], добавлен 18.06.2015

  • Библиотека как элемент образовательной среды. Основные технологии работы библиотеки общеобразовательного учреждения. Описание входных и выходных потоков информации. Выбор системы управления базами данных и создание схемы данных. Тестирование базы данных.

    дипломная работа [1,5 M], добавлен 13.10.2015

  • Разработка реляционной базы данных "Библиотека" с помощью СУБД Microsoft SQL Server 2000 и программной оболочки в Microsoft Access. Экономическое обоснование результатов внедрения программного продукта. Инструкция по эксплуатации клиентского приложения.

    курсовая работа [3,4 M], добавлен 01.07.2011

  • Создание системы управления базой данных "Библиотека" версии InterBase 6.5, выполненной в среде Delphi7. Создание таблиц СУБД: Читатель, Штраф, Выдача книги, Автор, Размещение книги, Экземпляр, Издательство, Произведения, Литературная форма, Жанр, Книга.

    дипломная работа [907,3 K], добавлен 20.09.2013

  • Описание проектирования электронной библиотеки для размещения в облаке документации кафедры. Планирование базы данных, структуры Web-системы и дизайна страниц. Разработка Интернет-системы в среде Visual Studio.NET. Разработка бизнес-логики системы.

    курсовая работа [2,5 M], добавлен 23.08.2014

  • Разработка базы данных для информационной системы "Библиотека". Системный анализ, инфологическое, даталогическое и физическое проектирование. Программирование бизнес-логики, разработка клиентского приложения. Создание web-приложения, web-доступ.

    курсовая работа [3,3 M], добавлен 15.09.2014

  • Основные этапы разработки и внедрения программного обеспечения. Понятие, функции и классификация баз данных. Проектирование базы данных "Библиотека" для ведения картотеки и учета выдачи книг. Пользовательский интерфейс программы, методика ее тестирования.

    дипломная работа [2,6 M], добавлен 09.06.2012

  • Создание таблиц базы данных в режиме конструктора. Наименование и структура таблиц базы данных "Библиотека". Применение поля подстановок и создание фиксированного списка значений для полей. Схема связи между таблицами. Формирование и выполнение запроса.

    контрольная работа [1,2 M], добавлен 24.07.2009

  • Создание Win-приложения для библиотеки, которое позволяло бы осуществлять операции выдачи и сдачи книг в соответствии со сроками. Выбор программных и технических средств реализации проекта. Разработка интерфейса системы, описание реализованных классов.

    курсовая работа [3,1 M], добавлен 14.08.2015

  • Анализ предметной области разрабатываемой информационной системы "Библиотека". Проектирование базы данных в среде MS Access. Физическая реализация данной информационной системы средствами Delphi 7 и MS Access 2003. Области применения технологии BDE.

    курсовая работа [2,4 M], добавлен 12.01.2016

  • Программные продукты, используемые при проектировании базы данных. Разработка базы данных "Библиотека" с использование программного проекта Microsoft SQL Server. Создание таблиц, триггеров, пользователей, репликации, запросов, функций, процедур.

    курсовая работа [897,6 K], добавлен 21.11.2011

  • Обзор систем автоматизации библиотек. Интерфейс системы "Ирбис". Основные характеристики системы "Библиотека-3". Диаграмма вариантов использования базы данных. Модель сущность-связь. Типы данных таблицы "книга", "читатели", "связь", "автор", "склад".

    курсовая работа [3,3 M], добавлен 15.04.2018

  • Разработка пользовательской документации для работы с виртуальной библиотекой, описание основных принципов. Требования к составу и параметрам технических средств. Информационное обеспечение задачи. Построение прототипа пользовательского интерфейса.

    курсовая работа [1,9 M], добавлен 02.06.2014

  • Разработка сайта "Библиотека онлайн": создание режима ведения системного каталога книг (по внутреннему номеру, наименованию), картотеки читателей (фамилия, адрес, телефон), поиск разными методами и просмотр информации, формирование посетителем заказа.

    курсовая работа [43,2 K], добавлен 14.06.2010

  • Разработка автоматизированной информационной системы для эффективного и быстрого обслуживания пользователей библиотеки ВУЗа. Среда разработки: MS Access. Язык программирования - VBA. Расчет технико-экономической выгоды внедрения данной технологии.

    дипломная работа [304,7 K], добавлен 19.03.2010

  • Общие сведения об автоматизированных информационных системах библиотек. Разработка графического макета, интерфейса и дизайна информационной системы. Требования к функциональной части системы. Создание программных модулей. Алгоритмы обработки данных.

    дипломная работа [1,7 M], добавлен 04.11.2016

  • Разработка программного средства в среде MS Access, содержащего функции электронной библиотеки и которое обеспечивает удобное добавление, удаление, редактирование данных. Руководство пользователя и проверка правильности работы разработанной системы.

    курсовая работа [4,0 M], добавлен 23.02.2011

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.