Создание автоматизированной информационно-управляющей системы
Обоснование выбора метода проектирования и инструментальных средств для разработки программного средства и базы данных. Требования к эргономике и технической эстетике. Разработка алгоритмов приложения. Руководство пользователя. Безопасность труда.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 17.10.2014 |
Размер файла | 2,9 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
- определить систему освещения (общая локализованная или равномерная, комбинированная);
- выбрать тип светильников с учетом характеристик светораспределения, условий среды (конструктивного исполнения) и др.;
- распределить светильники и определить их количество (светильники могут располагаться рядами, в шахматном порядке, ромбовидно);
- определить норму освещенности на рабочем месте.
Для расчета искусственного освещения используют в основном три метода.
Для расчета общего равномерного освещения при горизонтальной рабочей поверхности основным является метод коэффициента использования светового потока, учитывающий световой поток, отраженный от потолка и стен. Световой поток лампы Ф, лм, при использовании люминесцентных ламп рассчитывают по формуле:
(5.1)
где ЕН - нормированная минимальная освещенность, Лк;
S - площадь помещения, м2;
z - коэффициент неравномерности освещения;
kз - коэффициент запаса, учитывающий снижение освещенности из-за загрязнения и старения лампы;
N - число светильников;
n - число ламп в светильнике;
u - коэффициент использования светового потока.
Коэффициент неравномерности z зависит от светораспределения светильников и их расположения в пространстве. Он учитывает, что в реальных условиях неизбежна некоторая неравномерность освещения поверхности. Значение коэффициента колеблется от 1 до 1,5. При расположении светильников, близком к наивыгоднейшему, его можно принять z = 1,11,2.
Коэффициент запаса kз учитывает снижение освещенности из-за загрязнения и старения лампы. В случае освещения люминесцентными лампами:
kз = 1,5 - при запыленности помещения менее 5 мг/м3;
kз = 1,8 - при запыленности помещения от 5 до 10 мг/м3;
kз = 2,0 - при запыленности помещения более 10 мг/м3.
Для определения коэффициента использования светового потока и находится индекс помещения i и предположительно оцениваются коэффициенты отражения поверхностей помещения: потолка - n, стен - c, расчетной поверхности или пола - p.
Индекс находится по формуле:
, (5.2)
где А и В - длина и ширина помещения, м;
Нр - высота светильников над рабочей поверхностью, м.
Коэффициент использования светового потока определяется по таблицам, приведенным в специальных справочниках для проектирования электрического освещения в зависимости от типа светильника, отражательной способности стен, потолка и расчетной поверхности, размеров помещения, определенных индексом помещения.
Подсчитав световой поток лампы Ф, подбирают ближайшую стандартную лампу и определяют электрическую мощность всей осветительной установки. При выборе лампы допускается отклонение светового потока от расчетного в пределах 1020 %.
Подставив в формулу (5.2) значения, найдем индекс помещения.
.
По полученным значениям индекса помещения, находим по таблице 5.1, коэффициент использования светового потока.
Таблица 5.1 - Коэффициенты использования светового потока
Индекс помещения i |
Коэффициенты использования, % при различных типах светильников |
||||
ЛЦ |
ПВЛ |
ОДОР |
ШМ |
||
0,5 |
18 |
10 |
20 |
8 |
|
0,8 |
31 |
18 |
31 |
18 |
|
1,0 |
36 |
22 |
35 |
22 |
|
1,5 |
43 |
29 |
43 |
26 |
|
2,0 |
48 |
33 |
48 |
30 |
|
2,5 |
51 |
37 |
51 |
33 |
|
3,0 |
53 |
39 |
53 |
36 |
Подставив в формулу (5.1) значения, найдем световой поток лампы.
Таблица 5.2 - Светотехнические характеристики наиболее распространенных люминесцентных ламп (напряжения 230 В).
Тип ламп |
Световой поток Ф, лм |
||||||
Мощность лампы, Вт |
15 |
20 |
30 |
40 |
65 |
80 |
|
ЛДЦ |
500 |
820 |
1450 |
2100 |
3050 |
3560 |
|
ЛД |
590 |
920 |
1640 |
2340 |
3570 |
4070 |
|
ЛХБ |
675 |
935 |
1720 |
2600 |
3820 |
4440 |
|
ЛБ |
760 |
1180 |
2100 |
3000 |
4550 |
5220 |
Поскольку в СанПиН в качестве источников искусственного освещения рекомендуется использовать люминесцентные лампы типа ЛБ, то по таблице 5.2 находим лампу, по мощности соответствующую световому потоку в 2511,63 лм (ближайшая по мощности лампа - ЛБ 40-4). Для обеспечения нормального искусственного освещения в светильниках должны стоять лампы данного типа.
5.2.2 Расчет естественного освещения
Расчёт естественного освещения сводится к определению необходимой площади окон, обеспечивающих нормальную освещенность, и сравнение её с фактической площадью окон. В рассматриваемом помещении имеется 3 окна площадью по 3 м2.
Освещенность Е - поверхностная плотность светового потока; определяется как отношение светового потока dФ, равномерно падающего на освещаемую поверхность dS (м2), и её площади:
E = dФ/dS (5.3)
Освещенность измеряется в люксах [лк].
Степень освещенности естественным светом внутри помещения зависит от времени дня и года, состоянии погоды, а также месторасположение и планировки здания, ориентации здания, ориентации окон, числа и величины оконных проемов. Оценка освещенности естественным светом сводится к определению коэффициента естественной освещенности (КЕО), который представляет собой выраженное в процентах отношение освещенности в заданной точке помещения (Евн) к одновременной освещенности наружной точки (Енар), находящейся на горизонтальной плоскости, освещенной рассеянным светом всего небосвода:
КЕО = Евн/Енар 100% (5.4)
Согласно СНиП нормированное значение КЕО (ен) для здания, располагаемого в определенном районе следует определить по формуле:
eн = e m, (5.5)
где е - нормированное значение КЕО;
т - коэффициент светового климата.
При боковом освещении помещений расчет площади световых проемов ведется по формуле:
, (5.6)
где S0 - площадь световых проемов;
Sn - площадь пола помещения, м2;
eн - нормированное значение коэффициента естественной освещенности, %;
Кз - коэффициент запаса;
0 - световая характеристика окон;
Кзд - коэффициент, учитывающий затенение окон противостоящими зданиями;
0 - общий коэффициент светопропускания;
r1 - коэффициент, учитывающий влияние отраженного света.
Расстояние до противоположного здания 500 м. Расстояние от окна до рассчитываемой точки 1 м. Естественное освещение осуществляется через световые проемы в наружных стенах здания, ориентированные на север. Так как помещение имеет одностороннее боковое естественное освещение, то минимальное значение КЕО будет нормироваться в точке, расположенной на пересечении вертикальной плоскости характерного разреза помещения условной рабочей поверхности на расстоянии 1 м от стены, наиболее удаленной от световых проемов.
По формуле (5.5) рассчитаем нормированное значение КЕО (ен) для здания, располагаемого в Оренбургском районе:
ен = 2 0,9 = 1,8 %.
При боковом освещении помещения расчет площади светового проема рассчитаем по формуле (5.6):
м2.
Sфакт = 9 м2, S0 =19,15 м2, следовательно S0 ? Sфакт. Рассчитанная необходимая площадь окна оказалась больше фактической, что доказывает: имеющаяся площадь окна недостаточна для полноценного освещения, поэтому для компенсации этого недостатка освещённости в дневное время работы к естественному освещению применяют дополнительно искусственное.
5.3 Возможные чрезвычайные ситуации
Хлор - при нормальных условиях желто-зеленого цвета с резким раздражающим запахом. При обычном давлении затвердевает при температуре - 101 оС и сжижается при температуре - 34 оС. Плотность газообразного хлора примерно в 2,5 раза больше плотности воздуха, вследствие чего хлор стелится по земле, скапливается в низинах, подвалах, колодцах, тоннелях, по берегам ре, озер.
Используется он в производстве, хлорорганических соединений, применяется для отбеливания тканей и бумажной массы, обеззараживания питьевой воды, как дезинфицирующее средство и в других отраслях промышленности.
Следует помнить, что предельно допустимые концентрации (ПДК) хлора в атмосферном воздухе следующие:
- среднесуточная концентрация вещества в атмосфере населенных
мест- 0,03 мг/м3;
- предельно-допустимая максимальная разовая концентрация вещества в атмосфере населенных мест - 0,1 мг/м3;
- ориентировочный безопасный уровень воздействия вещества в воздухе рабочей зоны - 1 мг/м3.
Поражение возможно в основном через дыхательные пути, в меньшей степени - вследствие попадания капель на незащищенную кожу и слизистые оболочки. Оказывает сильное раздражающее действие на слизистую верхних дыхательных путей.
В легких случаях пораженные жалуются на першение в горле, жжение и чувство стеснения в груди, охриплость голоса, сухой кашель, затрудненное дыхание, легкая синюшность губ, резь в глазах, слезотечение.
При отравлениях средней тяжести наблюдается выраженная синюшность, дыхание учащенное, мучительный сухой лающий кашель («хлорный кашель»), в легких сухие и влажные хрипы.
В тяжелых случаях возможно развитие бронхита, бронхопневмонии; общее состояние тяжелое, выраженная синюшность, кашель, одышка, повышение температуры. Наибольшую опасность представляет возможность развития отека легких: увеличивается одышка, дыхание клокочущее, отделение слизистой мокроты и пенистой жидкости желтовато-розового цвета, учащенное сердцебиение, в легких большое количество влажных хрипов.
В очень тяжелых условиях отравления может наступить молниеносная смерть в результате рефлекторной остановки дыхания. Иногда дыхание останавливалось через 5-25 минут после вдыхания газа нередко смерть наступает от химического ожога легких.
Первая медицинская помощь, в очаге поражения осуществляемая в порядке само- и взаимопомощи:
- промыть глаза водой, лучше 2% раствором питьевой соды;
- надеть противогаз или ватно-марлевую повязку, смоченную 2% раствором питьевой соды;
- обработать пораженные участки кожи мыльным раствором;
- немедленно покинуть очаг поражения, лучше транспортными средствами.
С моделируем чрезвычайную ситуацию: недалеко от предприятия произошло разрушение емкости, содержащей 25 т хлора. Объект расположен на территории городской застройки, за чертой города расположен городской массив. Определить размеры и площадь зоны химического заражения. Метеорологические условия: инверсия, скорость ветра 2 м/с.
По таблице 1 для 25 т хлора находим глубину зараженного воздуха, при ветре 1 м/с она равна 80 км при инверсии, 11,5 при изотермии, 1,96 при конвекции. По таблице 2 определяем поправочный коэффициент для скорости ветра 2 м/с, он равен 0,6 при инверсии, 0,71 при изотермии, 0,7 при конвекции. Глубина распространения облака зараженного воздуха равна:
- 80·0,6 = 48 км при инверсии;
- 11,5·0,71 = 8,17 км при изотермии;
- 1,96·0,7 = 1,37 км при конвекции.
По условию задачи емкость обвалована. В соответствии с примечанием к таблице 1 глубину распространения зараженного воздуха уменьшаем в 1,5 раза. Следовательно, искомая глубина будет равна:
- 48 / 1,5=32 км при инверсии;
- 8,17 / 1,5=7,67 км при изотермии;
- 1,37 / 1,5=0,91 км при конвекции.
Определяем ширину зоны химического заражения.
Ширина (Ш) зоны химического заражения зависит от степени вертикальной устойчивости воздуха и определяется по следующим соотношениям:
- Ш = 0,03·Г при инверсии;
- Ш = 0,15·Г при изотермии;
- Ш = 0,8·Г при конвекции,
где Г - глубина распространения облака зараженного воздуха с поражающей концентрацией в км.
Ш = 0,03·Г = 0,03·32= 0,96 км при инверсии.
Ш = 0,15·Г = 0,15·7,67 = 1,15 км при изотермии.
Ш = 0,8·Г = 0,8·0,91 = 0,73 км при конвекции.
Площадь зоны заражения определяется по таблице значений и будет равна 15 км2 при инверсии, 4,5 км2 при изотермии, 0,33 км2 при конвекции.
Для скорости ветра 2 м/с в условиях инверсии по таблице 4 находим, что скорость переноса фронта зараженного облака составляет 10 км/ч при инверсии, 12 км/ч при изотермии, 14 км/ч при конвекции.
Время подхода облака зараженного воздуха к предприятию равна:
- t = 2 / 10 = 0,2 часа при инверсии;
- t = 2 / 12 = 0,17 часа при изотермии;
- t = 2 / 14 = 0,14 часа при конвекции.
Расчет времени эвакуации сотрудников учреждения
При возникновении чрезвычайной ситуации необходимо эвакуировать людей из зданий и сооружений из-за возникшей опасности. Поэтому необходимо чтобы процесс эвакуации завершился в необходимое время и безопасно.
Расчет времени эвакуации выполним для следующих условий: на этаже по 25 кабинетов, в каждом из них по 2 человека. Размеры кабинетов: длина 8 м, ширина 8 м. Длина коридора 30 м, ширина 2 м. Ширина лестницы 2 м, длина 20 м. Параметры приведены в таблице 5.3.
Таблица 5.3- Параметры расчетного объекта
Параметры № участка |
1 (начальный) |
2 (коридор) |
3 (лестница) |
4 (дверной проем) |
|
Длина участка, li, м |
8 |
30 |
10 |
1 |
|
Ширина участка, bi, м |
8 |
3 |
2 |
2 |
|
Число людей, Ni, м |
5 |
12 |
12 |
12 |
Расчетное время эвакуации людей tp определяется как сумма времени движения людского потока по отдельным участкам пути:
tp = t1 + t2 + t3, (5.5)
где t1 - время движения людского потока на начальном участке, мин;
t2 - время движения по коридору, мин;
t3 - время движения сквозь дверной проем, мин.
Время движения людского потока по участкам рассчитывается по формуле:
, (5.6)
где li - длинна участка, м;
vi - скорость движения людского потока, м/мин.
Скорость движения людского потока на начальном участке определяется по плотности D1, м/мин. Плотность движения людского потока на начальном участке пути, имеющем длину l1 и ширину b1 равна:
, (5.7)
где N1 - количество людей на начальном участке;
f - средняя площадь горизонтальной проекции человека, f = 0,125 м2.
Подставив значения из таблицы 5.4 получим:
м/мин.
Для значения плотности людского потока D1 = 0,01 м/мин по таблице 2 /8/ определяем скорость движения людского потока, она составит v1 =100 м/мин, а интенсивность движения q1 = 5.
Тогда время движения по начальному участку составит:
мин.
Скорость движения на остальных участках определяется по интенсивности движения людского потока по каждому из этих участков пути, которые рассчитываются по формуле:
, (5.8)
где bi, bi-1 - ширина рассматриваемого i и предшествующего ему i-1 участка пути, м;
qi, qi-1 - значения интенсивности движения людского потока по рассматриваемому i и предшествующему i-1 участкам пути, м/мин.
При слиянии вначале участка i двух и более людских потоков интенсивность движения qi, м/мин, вычисляют по формуле:
, (5.9)
где qi-1 - интенсивность движения людских потоков, сливающихся в начале участка i, м/мин;
bi-1 - ширина участков пути слияния, м;
bi - ширина рассматриваемого участка пути, м.
Подставив в формулу (5.9) значения из таблицы 5.4 и значения интенсивностей движения людского потока на первом участке получим:
,
где q11, q21 - интенсивности движения людского потока на сливающихся участках, q11 = q21 = q1.
м/мин.
Подставив значение q2 в формулу (5.8) и значения из таблицы 5.4 получим значения интенсивности людского потока на 3 и 4 участках:
м/мин.,
м/мин.
По значениям интенсивности находим значения скорости движения людского потока: v2 = 80 м/мин, v3 = 40 м/мин, v4 = 33 м/мин. Тогда по формуле (5.6) рассчитаем время движения по этим участкам:
мин.,
мин.,
мин.
Подставив значения в формулу (5.10) получим время эвакуации людей:
tp = 0,01 + 0,375 + 0,25 + 0,025 = 0,66 мин.
Выводы
В разделе проведен анализ и обеспечение безопасности труда сотрудников организации. Проведен расчет искусственного освещения и естественного освещения. А также была рассмотрена возможная чрезвычайная ситуация, связанная с разрушением обвалованной емкости содержащей хлор, время подхода зараженного воздуха до организации и рассчитано время эвакуации сотрудников.
Заключение
В настоящей пояснительной записке, рассмотрены основные аспекты проектирования и разработки автоматизированной информационно-управляющей системы мониторинга и управления системными параметрами оборудования. В ходе выполнения работы были решены следующие задачи:
- анализ предметной области;
- анализ существующих аналогов, в результате чего были выявлены ее достоинства и недостатки, и принято решение о разработке собственной системы;
- в соответствии с заданной предметной областью была спроектирована база данных, и реализована на InterBase 7.0.1;
- рассмотрены вопросы реализация целостности и безопасности данных;
- была выбрана архитектура программного средства, и выбрана модульная структура с функциональной связностью и низким сцеплением;
- разработан алгоритм программного средства;
- разработана сопроводительная документация для программиста и пользователя программного средства.
Проведен расчет экономического эффекта от внедрения программного продукта и обоснование необходимости его создания. На основании, которого можно сделать вывод: внедрение программного средства экономически оправданно и целесообразно.
Также в ходе работы рассмотрены мероприятия улучшению безопасности труда программиста и пользователя программного средства.
Разработанное программное средство отвечает всем требованиям функциональности, так как выполняет все возложенные на нее функции, и требования надежности. Поставленная задача выполнена.
Список использованных источников
1 Устав ООО «Восток»
2 Гофман, В.Э. Visual Studio.NET. [Текст] / В.Э. Гофман, А.Д. Хомоненко. СПб.: БХВ - Петербург, 2007. - 1152 с.
3 Керман, К. Программирование и отладка в C++ Builder. [Текст] Учебный курс, Москва 2006. - 326 c.
4 Бобровский, С. И. Delphi 7 [Текст]: учебный курс / С. И. Бобровский. - CПб. : Питер, 2008. - 736 с.
5 Фаронов, В. В. Программирование баз данных в Delphi 7 [Текст]: учеб. курс / В. В. Фаронов . - CПб. : Питер, 2005. - 459 с.
6 Тельман, Дж. Современные системы управления базами данных. - М.: Финансы и статистика, 2008. - 625 c.
7 Орлов, С.А. Технология разработки программного обеспечения. [Текст] - Спб.: Питер, 2002 - 464 с.
8 Когловский, М. Р. Технология баз данных на персональных ЭВМ. [Текст] - М.: Финансы и статистика, 1992. - 421 c.
9 Мартин, Дж. Организация баз данных в вычислительных системах. [Текст] - М: Мир, 1978. - 161 c.
10 Горев, А. Эффективная работа с СУБД. [Текст] / Горев А., Р. Ахаян, С. Макашарипов -СПб.: Питер, 1997. - 704 с.
11 Великанов, К.М. Экономика и организация производства в дипломных проектах. [Текст] - Л.: Машиностроение, 1986. - 285с.
12 Стивенс, Р. Delphi Готовые алгоритмы. [Текст] Москва 2001, - 102 с.
13 Гофман В.Э. Delphi 6. [Текст] / В.Э. Гофман, П.А. Иванов. СПб.: БХВ - Петербург, 2002. - 952с.
14 Епинешников, А.М. Программирование в среде Turbo Pascal 7.0. [Текст] / А.М. Епинешников, В.А. Епинешников. - М.: Диалог-Мифи, 1996. - 87 с.
15 Габдуллина, О. Г. Решение функциональных и вычислительных задач в средах Delphi и MathCAD [Текст]: учеб. пособие для вузов / О. Г. Габдуллина, О. А. Никонорова, Э. И. Бикмухаметова . - Оренбург : ОГУ, 2005. - 114 с.
16 ГОСТ 12.1.004-76. Основы противопожарной защиты предприятий. [Текст] - М.: Информационно-издательский центр Госкомсанэпиднадзора России, 1995. - 105 с.
17 ГОСТ 19.701-90. Схемы алгоритмов, программ, данных и систем. - [Текст] Введ. 01.01.92. - М.: Издательство стандартов, 1998. - 25 с.
18 Стандарт СТП 101-00г. [Текст] - Оренбург, 2000г., ОГУ.
19 СТП 2069022.101-00. Стандарт предприятия. Общие требования и правила оформления выпускных квалификационных работ, курсовых проектов (работ), отчетов по РГР, по УИРС, по производственной практике и рефератов. [Текст] - Оренбург: ОГУ, 2000.-65 с.
20 СанПиН 2.2.2.542 - 96. Гигиенические требования к видеодисплейным терминалам, ПЭВМ и организации работы. [Текст] - Введ. С 14.07.96 - М.: Информационно-издательский центр Госкомсанэпиднадзора России, 1996. - 65с.
21 СНиП II-2-80 - М.: Информационно-издательский центр Госкомсанэпиднадзора России [Текст] 1995. - 85с.
22 СНиП II-33-75 - М.: Информационно-издательский центр Госкомсанэпиднадзора России [Текст] 1995. - 55с.
23 СНиП 21-01-97 Пожарная безопасность зданий и сооружений [Текст] Введ. 13.02.97 - М.: Минстрой России, 1997.
24 СНиП 23-05-95 Естественное и искусственное освещение [Текст] Введ. 02.08.95 - М.: Минстрой России, 1995.
ПРИЛОЖЕНИЕ А
(обязательное)
SQL-скрипты
/* Table: DATCHIK, Owner: SYSDBA */
CREATE TABLE DATCHIK
(
ID INTEGER NOT NULL,
NAME VARCHAR(80) NOT NULL,
ID_PROIZ INTEGER NOT NULL,
ID_TIP_DATCHIKA INTEGER NOT NULL,
CONSTRAINT PK_DATCHIK PRIMARY KEY (ID)
);
ALTER TABLE DATCHIK ADD CONSTRAINT FK1_DATCHIK FOREIGN KEY (ID_PROIZ) REFERENCES PROIZ (ID);
ALTER TABLE DATCHIK ADD CONSTRAINT FK2_DATCHIK FOREIGN KEY (ID_TIP_DATCHIKA) REFERENCES TIP_DATCHIKA (ID);
SET TERM ^ ;
/* Triggers only will work for SQL triggers */
CREATE TRIGGER DATCHIK_BI FOR DATCHIK
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
IF (NEW.ID IS NULL) THEN
NEW.ID = GEN_ID(GEN_DATCHIK_ID,1);
END
^
COMMIT WORK ^
SET TERM ;^
/* Table: ITAZH, Owner: SYSDBA */
CREATE TABLE ITAZH
(
ID INTEGER NOT NULL,
NUMBER INTEGER NOT NULL,
CONSTRAINT PK_ITAZH PRIMARY KEY (ID)
);
SET TERM ^ ;
/* Triggers only will work for SQL triggers */
CREATE TRIGGER ITAZH_BI FOR ITAZH
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
IF (NEW.ID IS NULL) THEN
NEW.ID = GEN_ID(GEN_ITAZH_ID,1);
END
^
COMMIT WORK ^
SET TERM ;^
/* Table: LIST_UST, Owner: SYSDBA */
CREATE TABLE LIST_UST
(
ID INTEGER NOT NULL,
SR_NUMBER VARCHAR(10) NOT NULL,
DATA_US TIMESTAMP NOT NULL,
DATA_SP TIMESTAMP,
ID_DATCHIK INTEGER NOT NULL,
ID_POM INTEGER NOT NULL,
ID_STAT INTEGER NOT NULL,
CONSTRAINT PK_LIST_UST PRIMARY KEY (ID)
);
ALTER TABLE LIST_UST ADD CONSTRAINT FK1_LIST_UST FOREIGN KEY (ID_DATCHIK) REFERENCES DATCHIK (ID);
ALTER TABLE LIST_UST ADD CONSTRAINT FK2_LIST_UST FOREIGN KEY (ID_POM) REFERENCES POM (ID);
ALTER TABLE LIST_UST ADD CONSTRAINT FK3_LIST_UST FOREIGN KEY (ID_STAT) REFERENCES STAT (ID);
SET TERM ^ ;
/* Triggers only will work for SQL triggers */
CREATE TRIGGER LIST_UST_BI FOR LIST_UST
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
IF (NEW.ID IS NULL) THEN
NEW.ID = GEN_ID(GEN_LIST_UST_ID,1);
END
^
COMMIT WORK ^
SET TERM ;^
/* Table: POKAZ, Owner: SYSDBA */
CREATE TABLE POKAZ
(
ID INTEGER NOT NULL,
VR TIMESTAMP NOT NULL,
ZNACH INTEGER NOT NULL,
ID_LIST_UST INTEGER NOT NULL,
CONSTRAINT PK_POKAZ PRIMARY KEY (ID)
);
ALTER TABLE POKAZ ADD CONSTRAINT FK_POKAZ FOREIGN KEY (ID_LIST_UST) REFERENCES LIST_UST (ID);
SET TERM ^ ;
/* Triggers only will work for SQL triggers */
CREATE TRIGGER POKAZ_BI FOR POKAZ
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
IF (NEW.ID IS NULL) THEN
NEW.ID = GEN_ID(GEN_POKAZ_ID,1);
END
^
COMMIT WORK ^
SET TERM ;^
/* Table: POM, Owner: SYSDBA */
CREATE TABLE POM
(
ID INTEGER NOT NULL,
NAME VARCHAR(50) NOT NULL,
PLO INTEGER NOT NULL,
ID_ITAZH INTEGER NOT NULL,
CONSTRAINT PK_POM PRIMARY KEY (ID)
);
ALTER TABLE POM ADD CONSTRAINT FK_POM FOREIGN KEY (ID_ITAZH) REFERENCES ITAZH (ID);
SET TERM ^ ;
/* Triggers only will work for SQL triggers */
CREATE TRIGGER POM_BI FOR POM
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
IF (NEW.ID IS NULL) THEN
NEW.ID = GEN_ID(GEN_POM_ID,1);
END
^
COMMIT WORK ^
SET TERM ;^
/* Table: PROIZ, Owner: SYSDBA */
CREATE TABLE PROIZ
(
ID INTEGER NOT NULL,
NAME VARCHAR(60) NOT NULL,
CONSTRAINT PK_PROIZ PRIMARY KEY (ID)
);
SET TERM ^ ;
/* Triggers only will work for SQL triggers */
CREATE TRIGGER PROIZ_BI FOR PROIZ
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
IF (NEW.ID IS NULL) THEN
NEW.ID = GEN_ID(GEN_PROIZ_ID,1);
END
^
COMMIT WORK ^
SET TERM ;^
/* Table: PROV, Owner: SYSDBA */
CREATE TABLE PROV
(
ID INTEGER NOT NULL,
DATA TIMESTAMP NOT NULL,
OPIS VARCHAR(100) NOT NULL,
ID_LIST_UST INTEGER NOT NULL,
ID_SOTR INTEGER NOT NULL,
CONSTRAINT PK_PROV PRIMARY KEY (ID)
);
ALTER TABLE PROV ADD CONSTRAINT FK1_PROV FOREIGN KEY (ID_LIST_UST) REFERENCES LIST_UST (ID);
ALTER TABLE PROV ADD CONSTRAINT FK2_PROV FOREIGN KEY (ID_SOTR) REFERENCES SOTR (ID);
SET TERM ^ ;
/* Triggers only will work for SQL triggers */
CREATE TRIGGER PROV_BI FOR PROV
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
IF (NEW.ID IS NULL) THEN
NEW.ID = GEN_ID(GEN_PROV_ID,1);
END
^
COMMIT WORK ^
SET TERM ;^
/* Table: SOTR, Owner: SYSDBA */
CREATE TABLE SOTR
(
ID INTEGER NOT NULL,
FIO VARCHAR(100) NOT NULL,
POST VARCHAR(50) NOT NULL,
CONSTRAINT PK_SOTR PRIMARY KEY (ID)
);
SET TERM ^ ;
/* Triggers only will work for SQL triggers */
CREATE TRIGGER SOTR_BI FOR SOTR
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
IF (NEW.ID IS NULL) THEN
NEW.ID = GEN_ID(GEN_SOTR_ID,1);
END
^
COMMIT WORK ^
SET TERM ;^
/* Table: STAT, Owner: SYSDBA */
CREATE TABLE STAT
(
ID INTEGER NOT NULL,
NAME VARCHAR(50) NOT NULL,
CONSTRAINT PK_STAT PRIMARY KEY (ID)
);
SET TERM ^ ;
/* Triggers only will work for SQL triggers */
CREATE TRIGGER STAT_BI FOR STAT
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
IF (NEW.ID IS NULL) THEN
NEW.ID = GEN_ID(GEN_STAT_ID,1);
END
^
COMMIT WORK ^
SET TERM ;^
/* Table: TIP_DATCHIKA, Owner: SYSDBA */
CREATE TABLE TIP_DATCHIKA
(
ID INTEGER NOT NULL,
NAME VARCHAR(50) NOT NULL,
CONSTRAINT PK_TIP_DATCHIKA PRIMARY KEY (ID)
);
SET TERM ^ ;
/* Triggers only will work for SQL triggers */
CREATE TRIGGER TIP_DATCHIKA_BI FOR TIP_DATCHIKA
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
IF (NEW.ID IS NULL) THEN
NEW.ID = GEN_ID(GEN_TIP_DATCHIKA_ID,1);
END
^
COMMIT WORK ^
SET TERM ;^
Приложение Б
(обязательное)
Текст программы
unit datchik;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, IBCustomDataSet, IBQuery, StdCtrls, DBCtrls, Grids, DBGrids;
type
TForm7 = class(TForm)
DataSource1: TDataSource;
DBGrid1: TDBGrid;
DBLookupComboBox1: TDBLookupComboBox;
DBLookupComboBox2: TDBLookupComboBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Edit1: TEdit;
Button1: TButton;
Button2: TButton;
Button3: TButton;
IBQuery1: TIBQuery;
IBQuery2: TIBQuery;
IBQuery3: TIBQuery;
IBQuery4: TIBQuery;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form7: TForm7;
implementation
uses menu,proiz, tip_datchika;
{$R *.dfm}
procedure TForm7.Button1Click(Sender: TObject);
begin
IBQuery2.Params[0].AsString:=Edit1.Text;
IBQuery2.Params[1].AsString:=form3.IBQuery1.Fields[0].AsString;
IBQuery2.Params[2].AsString:=form4.IBQuery1.Fields[0].AsString;
IBQuery2.Open;
IBQuery2.Close;
IBQuery1.Close;
IBQuery1.Open;
Edit1.Text:='';
end;
procedure TForm7.Button2Click(Sender: TObject);
begin
IBQuery3.Params[0].AsString:=Edit1.Text;
IBQuery3.Params[1].AsString:=form3.IBQuery1.Fields[0].AsString;
IBQuery3.Params[2].AsString:=form4.IBQuery1.Fields[0].AsString;
IBQuery3.Params[3].AsString:=IBQuery1.Fields[0].AsString;
IBQuery3.Open;
IBQuery3.Close;
IBQuery1.Close;
IBQuery1.Open;
Edit1.Text:='';
end;
procedure TForm7.Button3Click(Sender: TObject);
begin
IBQuery4.Params[0].AsString:=IBQuery1.Fields[0].AsString;
IBQuery4.Open;
IBQuery4.Close;
IBQuery1.Close;
IBQuery1.Open;
end;
end.
unit itazh;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids, DBGrids, DB, IBCustomDataSet, IBQuery;
type
TForm2 = class(TForm)
DataSource1: TDataSource;
DBGrid1: TDBGrid;
Label1: TLabel;
Edit1: TEdit;
Button1: TButton;
Button2: TButton;
Button3: TButton;
IBQuery1: TIBQuery;
IBQuery2: TIBQuery;
IBQuery3: TIBQuery;
IBQuery4: TIBQuery;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
uses menu;
{$R *.dfm}
procedure TForm2.Button1Click(Sender: TObject);
begin
IBQuery2.Params[0].AsString:=Edit1.Text;
IBQuery2.Open;
IBQuery2.Close;
IBQuery1.Close;
IBQuery1.Open;
Edit1.Text:='';
end;
procedure TForm2.Button2Click(Sender: TObject);
begin
IBQuery3.Params[0].AsString:=Edit1.Text;
IBQuery3.Params[1].AsString:=IBQuery1.Fields[0].AsString;
IBQuery3.Open;
IBQuery3.Close;
IBQuery1.Close;
IBQuery1.Open;
Edit1.Text:='';
end;
procedure TForm2.Button3Click(Sender: TObject);
begin
IBQuery4.Params[0].AsString:=IBQuery1.Fields[0].AsString;
IBQuery4.Open;
IBQuery4.Close;
IBQuery1.Close;
IBQuery1.Open;
end;
end.
unit kon_dat;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, IBCustomDataSet, IBQuery, DBCtrls, StdCtrls, Grids, DBGrids,
ComCtrls;
type
TForm13 = class(TForm)
Label1: TLabel;
DBLookupComboBox1: TDBLookupComboBox;
DBLookupComboBox2: TDBLookupComboBox;
IBQuery1: TIBQuery;
Label2: TLabel;
IBQuery2: TIBQuery;
DataSource1: TDataSource;
DataSource2: TDataSource;
Label3: TLabel;
Label4: TLabel;
DateTimePicker1: TDateTimePicker;
DateTimePicker2: TDateTimePicker;
DBGrid1: TDBGrid;
IBQuery3: TIBQuery;
DataSource3: TDataSource;
Edit1: TEdit;
IBQuery4: TIBQuery;
procedure DBLookupComboBox1Click(Sender: TObject);
procedure DBLookupComboBox2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form13: TForm13;
implementation
uses menu;
{$R *.dfm}
procedure TForm13.DBLookupComboBox1Click(Sender: TObject);
begin
IBQuery2.Close;
IBQuery2.Params[0].AsString:=IBQuery1.Fields[0].AsString;
IBQuery2.Open;
end;
procedure TForm13.DBLookupComboBox2Click(Sender: TObject);
var
s:string;
begin
s:= '';
IBQuery3.Close;
IBQuery3.Params[0].AsString:=IBQuery2.Fields[0].AsString;
IBQuery3.Params[1].AsDate:=DateTimePicker1.Date;
IBQuery3.Params[2].AsDate:=DateTimePicker2.Date;
IBQuery3.Open;
IBQuery4.Params[0].AsString:=IBQuery2.Fields[3].AsString;
IBQuery4.Open;
s:=IBQuery4.Fields[3].AsString;
IBQuery4.Close;
Edit1.Text:=s;
end;
end.
unit kon_tdat;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, DB, IBCustomDataSet, IBQuery, ComCtrls, DBCtrls,
StdCtrls;
type
TForm14 = class(TForm)
Label1: TLabel;
DBLookupComboBox1: TDBLookupComboBox;
Label2: TLabel;
Label3: TLabel;
DateTimePicker1: TDateTimePicker;
DateTimePicker2: TDateTimePicker;
DataSource1: TDataSource;
IBQuery1: TIBQuery;
DBGrid1: TDBGrid;
procedure DBLookupComboBox1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form14: TForm14;
implementation
uses menu, tip_datchika;
{$R *.dfm}
procedure TForm14.DBLookupComboBox1Click(Sender: TObject);
begin
IBQuery1.Close;
IBQuery1.Params[0].AsDate:=DateTimePicker1.Date;
IBQuery1.Params[1].AsDate:=DateTimePicker2.Date;
IBQuery1.Params[2].AsString:=form4.IBQuery1.Fields[0].AsString;
IBQuery1.Open;
end;
end.
unit list_ust;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, IBCustomDataSet, IBQuery, StdCtrls, ComCtrls, Grids, DBGrids,
DBCtrls;
type
TForm9 = class(TForm)
DataSource1: TDataSource;
DBGrid1: TDBGrid;
Edit1: TEdit;
Edit2: TEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Edit3: TEdit;
DateTimePicker1: TDateTimePicker;
DateTimePicker2: TDateTimePicker;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
IBQuery1: TIBQuery;
IBQuery2: TIBQuery;
IBQuery3: TIBQuery;
Label4: TLabel;
Label5: TLabel;
DBLookupComboBox1: TDBLookupComboBox;
DBLookupComboBox2: TDBLookupComboBox;
Button5: TButton;
IBQuery4: TIBQuery;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form9: TForm9;
implementation
uses menu, datchik, stat, pokaz, prov;
{$R *.dfm}
procedure TForm9.Button1Click(Sender: TObject);
begin
IBQuery2.Params[0].AsString:=Edit3.Text;
IBQuery2.Params[1].AsString:=DateToStr(DateTimePicker1.DateTime);
IBQuery2.Params[2].AsString:=form7.IBQuery1.Fields[0].AsString;
IBQuery2.Params[3].AsString:=Edit2.Text;
IBQuery2.Params[4].AsString:=form5.IBQuery1.Fields[0].AsString;
IBQuery2.Open;
IBQuery2.Close;
IBQuery1.Close;
IBQuery1.Open;
Edit3.Text:='';
end;
procedure TForm9.Button2Click(Sender: TObject);
begin
IBQuery3.Params[0].AsString:=IBQuery1.Fields[0].AsString;
IBQuery3.Open;
IBQuery3.Close;
IBQuery1.Close;
IBQuery1.Open;
end;
procedure TForm9.Button3Click(Sender: TObject);
begin
form10.edit3.Text:='';
form10.IBQuery1.Close;
form10.IBQuery1.Params[0].AsString:=IBQuery1.Fields[0].AsString;
form10.edit1.Text:=IBQuery1.Fields[1].AsString;
form10.edit2.Text:=IBQuery1.Fields[0].AsString;
form10.IBQuery1.Open;
form10.ShowModal;
end;
procedure TForm9.Button4Click(Sender: TObject);
begin
form11.edit3.Text:='';
form11.IBQuery1.Close;
form11.IBQuery1.Params[0].AsString:=IBQuery1.Fields[0].AsString;
form11.edit1.Text:=IBQuery1.Fields[5].AsString;
form11.edit2.Text:=IBQuery1.Fields[0].AsString;
form11.IBQuery1.Open;
form11.ShowModal;
end;
procedure TForm9.Button5Click(Sender: TObject);
begin
IBQuery4.Params[0].AsString:=DateToStr(DateTimePicker2.Date);
IBQuery4.Params[1].AsString:=IBQuery1.Fields[0].AsString;
IBQuery4.Open;
IBQuery4.Close;
IBQuery1.Close;
IBQuery1.Open;
end;
end.
unit menu;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, IBDatabase, DB;
type
TForm1 = class(TForm)
MainMenu1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N8: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
N11: TMenuItem;
N12: TMenuItem;
N13: TMenuItem;
IBDatabase1: TIBDatabase;
IBTransaction1: TIBTransaction;
procedure N13Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure N5Click(Sender: TObject);
procedure N6Click(Sender: TObject);
procedure N7Click(Sender: TObject);
procedure N8Click(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N9Click(Sender: TObject);
procedure N11Click(Sender: TObject);
procedure N12Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses itazh, proiz, tip_datchika, stat, sotr, datchik, pom, kon_dat, ustan,
kon_tdat;
{$R *.dfm}
procedure TForm1.N13Click(Sender: TObject);
begin
Close;
end;
procedure TForm1.N4Click(Sender: TObject);
begin
form2.edit1.text:='';
form2.ShowModal;
end;
procedure TForm1.N5Click(Sender: TObject);
begin
form3.edit1.text:='';
form3.ShowModal;
end;
procedure TForm1.N6Click(Sender: TObject);
begin
form4.edit1.text:='';
form4.ShowModal;
end;
procedure TForm1.N7Click(Sender: TObject);
begin
form5.edit1.text:='';
form5.ShowModal;
end;
procedure TForm1.N8Click(Sender: TObject);
begin
form6.edit1.text:='';
form6.edit2.text:='';
form6.edit3.text:='';
form6.edit4.text:='';
form6.ShowModal;
end;
procedure TForm1.N1Click(Sender: TObject);
begin
form7.edit1.text:='';
form7.ShowModal;
end;
procedure TForm1.N2Click(Sender: TObject);
begin
form8.edit1.text:='';
form8.edit2.text:='';
form8.ShowModal;
end;
procedure TForm1.N9Click(Sender: TObject);
begin
form12.Edit1.Text:='';
form12.Edit2.Text:='';
form12.ShowModal;
end;
procedure TForm1.N11Click(Sender: TObject);
begin
Form13.Edit1.Text:='';
Form13.IBQuery1.Close;
Form13.IBQuery1.Open;
Form13.ShowModal;
end;
procedure TForm1.N12Click(Sender: TObject);
begin
Form14.ShowModal;
end;
end.
unit pokaz;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, IBCustomDataSet, IBQuery, StdCtrls, ComCtrls, Grids, DBGrids;
type
TForm10 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
Label1: TLabel;
Label2: TLabel;
DateTimePicker1: TDateTimePicker;
Edit3: TEdit;
Button1: TButton;
Button2: TButton;
IBQuery1: TIBQuery;
IBQuery2: TIBQuery;
IBQuery3: TIBQuery;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form10: TForm10;
implementation
uses menu;
{$R *.dfm}
procedure TForm10.Button1Click(Sender: TObject);
begin
IBQuery2.Params[0].AsDateTime:=DateTimePicker1.DateTime;
IBQuery2.Params[1].AsString:=Edit3.Text;
IBQuery2.Params[2].AsString:=Edit2.Text;
IBQuery2.Open;
IBQuery2.Close;
IBQuery1.Close;
IBQuery1.Open;
Edit3.Text:='';
end;
procedure TForm10.Button2Click(Sender: TObject);
begin
IBQuery3.Params[0].AsString:=IBQuery1.Fields[0].AsString;
IBQuery3.Open;
IBQuery3.Close;
IBQuery1.Close;
IBQuery1.Open;
end;
end.
unit pom;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, IBCustomDataSet, IBQuery, StdCtrls, DBCtrls, Grids, DBGrids;
type
TForm8 = class(TForm)
Label1: TLabel;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
DBLookupComboBox1: TDBLookupComboBox;
Label2: TLabel;
Label3: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Label4: TLabel;
IBQuery1: TIBQuery;
IBQuery2: TIBQuery;
IBQuery3: TIBQuery;
IBQuery4: TIBQuery;
procedure Button1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure DBLookupComboBox1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form8: TForm8;
implementation
uses menu, itazh, list_ust;
{$R *.dfm}
procedure TForm8.Button1Click(Sender: TObject);
begin
IBQuery2.Params[0].AsString:=Edit1.Text;
IBQuery2.Params[1].AsString:=Edit2.Text;
IBQuery2.Params[2].AsString:=form2.IBQuery1.Fields[0].AsString;
IBQuery2.Open;
IBQuery2.Close;
IBQuery1.Close;
IBQuery1.Open;
Edit1.Text:='';
Edit2.Text:='';
end;
procedure TForm8.Button3Click(Sender: TObject);
begin
IBQuery4.Params[0].AsString:=IBQuery1.Fields[0].AsString;
IBQuery4.Open;
IBQuery4.Close;
IBQuery1.Close;
IBQuery1.Open;
end;
procedure TForm8.Button2Click(Sender: TObject);
begin
IBQuery3.Params[0].AsString:=Edit1.Text;
IBQuery3.Params[1].AsString:=Edit2.Text;
IBQuery3.Params[2].AsString:=form2.IBQuery1.Fields[0].AsString;
IBQuery3.Params[3].AsString:=IBQuery1.Fields[0].AsString;
IBQuery3.Open;
IBQuery3.Close;
IBQuery1.Close;
IBQuery1.Open;
Edit1.Text:='';
Edit2.Text:='';
end;
procedure TForm8.Button4Click(Sender: TObject);
begin
form9.edit3.Text:='';
form9.IBQuery1.Close;
form9.IBQuery1.Params[0].AsString:=IBQuery1.Fields[0].AsString;
form9.edit1.Text:=IBQuery1.Fields[1].AsString;
form9.edit2.Text:=IBQuery1.Fields[0].AsString;
form9.IBQuery1.Open;
form9.ShowModal;
end;
procedure TForm8.DBLookupComboBox1Click(Sender: TObject);
begin
IBQuery1.Close;
IBQuery1.Params[0].AsString:=form2.IBQuery1.Fields[0].AsString;
IBQuery1.Open;
end;
end.
unit proiz;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids, DBGrids, DB, IBCustomDataSet, IBQuery;
type
TForm3 = class(TForm)
DataSource1: TDataSource;
DBGrid1: TDBGrid;
Label1: TLabel;
Edit1: TEdit;
Button1: TButton;
Button2: TButton;
Button3: TButton;
IBQuery1: TIBQuery;
IBQuery2: TIBQuery;
IBQuery3: TIBQuery;
IBQuery4: TIBQuery;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form3: TForm3;
implementation
uses menu;
{$R *.dfm}
procedure TForm3.Button1Click(Sender: TObject);
begin
IBQuery2.Params[0].AsString:=Edit1.Text;
IBQuery2.Open;
IBQuery2.Close;
IBQuery1.Close;
IBQuery1.Open;
Edit1.Text:='';
end;
procedure TForm3.Button2Click(Sender: TObject);
begin
IBQuery3.Params[0].AsString:=Edit1.Text;
IBQuery3.Params[1].AsString:=IBQuery1.Fields[0].AsString;
IBQuery3.Open;
IBQuery3.Close;
IBQuery1.Close;
IBQuery1.Open;
Edit1.Text:='';
end;
procedure TForm3.Button3Click(Sender: TObject);
begin
IBQuery4.Params[0].AsString:=IBQuery1.Fields[0].AsString;
IBQuery4.Open;
IBQuery4.Close;
IBQuery1.Close;
IBQuery1.Open;
end;
end.
unit prov;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, IBCustomDataSet, IBQuery, StdCtrls, ComCtrls, Grids, DBGrids,
DBCtrls;
type
TForm11 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
Label1: TLabel;
Label2: TLabel;
Edit3: TEdit;
DateTimePicker1: TDateTimePicker;
Button1: TButton;
Button2: TButton;
IBQuery1: TIBQuery;
IBQuery2: TIBQuery;
IBQuery3: TIBQuery;
Label3: TLabel;
DBLookupComboBox1: TDBLookupComboBox;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form11: TForm11;
implementation
uses menu, sotr;
{$R *.dfm}
procedure TForm11.Button1Click(Sender: TObject);
begin
IBQuery2.Params[0].AsString:=DateToStr(DateTimePicker1.DateTime);
IBQuery2.Params[1].AsString:=Edit3.Text;
IBQuery2.Params[2].AsString:=Edit2.Text;
IBQuery2.Params[3].AsString:=form6.IBQuery1.Fields[0].AsString;
IBQuery2.Open;
IBQuery2.Close;
IBQuery1.Close;
IBQuery1.Open;
Edit3.Text:='';
end;
procedure TForm11.Button2Click(Sender: TObject);
begin
IBQuery3.Params[0].AsString:=IBQuery1.Fields[0].AsString;
IBQuery3.Open;
IBQuery3.Close;
IBQuery1.Close;
IBQuery1.Open;
end;
end.
unit sotr;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids, DBGrids, DB, IBCustomDataSet, IBQuery;
type
TForm6 = class(TForm)
DataSource1: TDataSource;
DBGrid1: TDBGrid;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Button1: TButton;
Button2: TButton;
Button3: TButton;
IBQuery1: TIBQuery;
IBQuery2: TIBQuery;
IBQuery3: TIBQuery;
IBQuery4: TIBQuery;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form6: TForm6;
implementation
uses menu;
{$R *.dfm}
procedure TForm6.Button1Click(Sender: TObject);
begin
IBQuery2.Params[0].AsString:=Edit2.Text+' '+Edit3.Text+' '+Edit4.Text;
IBQuery2.Params[1].AsString:=Edit1.Text;
IBQuery2.Open;
IBQuery2.Close;
IBQuery1.Close;
IBQuery1.Open;
Edit1.Text:='';
Edit2.Text:='';
Edit3.Text:='';
Edit4.Text:='';
end;
procedure TForm6.Button2Click(Sender: TObject);
begin
IBQuery3.Params[0].AsString:=Edit2.Text+' '+Edit3.Text+' '+Edit4.Text;
IBQuery3.Params[1].AsString:=Edit1.Text;
IBQuery3.Params[2].AsString:=IBQuery1.Fields[0].AsString;
IBQuery3.Open;
IBQuery3.Close;
IBQuery1.Close;
IBQuery1.Open;
Edit1.Text:='';
end;
procedure TForm6.Button3Click(Sender: TObject);
begin
IBQuery4.Params[0].AsString:=IBQuery1.Fields[0].AsString;
IBQuery4.Open;
IBQuery4.Close;
IBQuery1.Close;
IBQuery1.Open;
end;
end.
unit stat;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids, DBGrids, DB, IBCustomDataSet, IBQuery;
type
TForm5 = class(TForm)
DataSource1: TDataSource;
DBGrid1: TDBGrid;
Label1: TLabel;
Edit1: TEdit;
Button1: TButton;
Button2: TButton;
Button3: TButton;
IBQuery1: TIBQuery;
IBQuery2: TIBQuery;
IBQuery3: TIBQuery;
IBQuery4: TIBQuery;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form5: TForm5;
implementation
uses menu;
{$R *.dfm}
procedure TForm5.Button1Click(Sender: TObject);
begin
Подобные документы
Требования к программному средству. Спецификация качества программного обеспечения. Требования к эргономике и технической эстетики. Стадии и этапы разработки, порядок контроля и приемки. Проектирование архитектуры приложения, руководство пользователя.
курсовая работа [381,6 K], добавлен 20.06.2012Последовательность разработки "Базы данных ГОСТИНИЦА" в среде Visual Studio 2010 C#. Обоснование выбора средства программирования. Требования к аппаратному обеспечению. Алгоритм решения задачи, функциональное назначение. Руководство пользователя.
курсовая работа [2,0 M], добавлен 07.07.2012Основные понятия и определение теории баз данных. Обоснование выбора программного обеспечения. Разработка таблиц и схемы БД. Использование запросов. Создание отчетов и форм. Руководство пользователя. Рекомендации по дальнейшей модернизации системы.
курсовая работа [2,1 M], добавлен 04.06.2014Разработка приложения, позволяющего автоматизировать документооборот предприятия по списанию основных средств. Мероприятия по защите и обеспечению целостности базы данных. Разработка клиентского приложения. Запросы к базе данных, руководство пользователя.
курсовая работа [700,0 K], добавлен 14.01.2015Общие требования к АИС киноцентра "Пирамида". Концептуальное, логическое и физическое проектирование, запросы к базе данных и экранные формы. Основы разработки внешних приложений в Delphi. Создание внешнего приложения и руководство пользователя.
курсовая работа [1,3 M], добавлен 03.11.2014Определение автоматизированных информационных систем. Обоснование выбора среды разработки информационной системы. Создание запросов для выбора информации. Логическая и физическая структура реляционной базы данных. Разработка интерфейса пользователя.
курсовая работа [2,1 M], добавлен 16.04.2017Обзор программных средств разработки приложений и обоснование выбора языка программирования. Классификация приложений для работы с базами данных. Функциональная структура базы данных с указанием назначения программных модулей, руководство пользователя.
дипломная работа [645,3 K], добавлен 21.11.2010Организация электронного документооборота. Создание базы данных. Анализ существующих программных средств автоматизации. Обоснование выбора платформы разработки программного продукта. Выбор почтового клиента. Реализация нулевого прототипа системы.
курсовая работа [384,1 K], добавлен 14.11.2016Основное функциональное назначение электронного учебника. Основные требования к программной документации. Разработка алгоритма решения задачи. Требования к эргономике и технической эстетике. Назначение и условия применения программного средства.
курсовая работа [2,1 M], добавлен 09.08.2011Понятие автоматизированной информационной системы. Построение функционально-ориентированных моделей "как есть" (as-is) и "как должно быть" (to-be). Описание базы данных, разработка приложения, руководство пользователя. Счет-фактура, платежное поручение.
дипломная работа [3,5 M], добавлен 23.04.2013