Проектирование автоматизированного рабочего места кассира-операциониста для ООО "Расчетно-кассовый центр"

Технологический процесс сбора, передачи, обработки и выдачи информации. Назначение программного продукта. Анализ экономических показателей внедрения автоматизированного рабочего места кассира-операциониста. Организация рабочего места оператора ЭВМ.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 08.12.2014
Размер файла 2,6 M

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

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

В случае работы АРМа “Кассир” в комплексе, из расчетной системы в БД АРМ “Кассир” поступают данные по лицевым счетам, включая информацию по начислениям и последним оплатам.

При отсутствии программ расчета начислений или в случае невозможности формировать справочники с информацией по лицевым счетам (задолженностям и оплатам), АРМ “Кассир” может использоваться исключительно для приема наличных платежей с выдачей отчетов по собранным платежам в бумажном и электронном виде.

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

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

Требования к разрабатываемому программному продукту:

ѕ наличие удобного графического интерфейса;

ѕ высокая скорость работы программы;

ѕ возможность работы с базами данных;

ѕ подсистема помощи;

ѕ интерфейс взаимодействия с аппаратным обеспечением (фискальный регистратор, сканер штрих кода, терминал банковских карт и т. д.).

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

ѕ функция выбора;

ѕ функция оптимизации;

ѕ функция обмена данными;

ѕ функция выдачи результата пользователю или передача данными другому блоку.

3.1.3 Анализ конкурентоспособности программного продукта

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

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

ѕ удобный формат баз данных, который является достаточно распространенным;

ѕ высокая степень совместимости с существующими операционными системами;

ѕ небольшой размер занимаемой памяти;

ѕ достаточная степень универсальности;

ѕ низкая закупочная цена программного продукта.

автоматизированный рабочий место кассир

3.2 Технико-экономическое основание

3.2.1 Определение трудоемкости разработки программного продукта

Краткая характеристика программного продукта:

ѕ объем программного продукта n Т.Н.К. = 2,30 тыс. исходных команд;

ѕ группа сложности программного продукта - 2 (задачи учета, отчетности и статистики);

ѕ дополнительный коэффициент сложности Ксл = 0,16;

ѕ степень новизны разрабатываемого программного продукта - В;

Номинальная трудоемкость для программного изделия независимого типа определяется по формуле:

(3.1)

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

В уточненной модели все характеристики разработки рассчитываются с учетом его качественного уровня. Коэффициент уровня программной разработки в соответствии с оценкой проекта программного изделия определяется по 15 факторам, объединенным по содержанию в 4 группы. Для каждого из указанных факторов устанавливается соответствующий коэффициент, который характеризует влияние фактора на программную разработку. Все данные приведены в таблице 3.1.

Таблица 3.1 -- Факторы, влияющие на программную разработку

Факторы, влияющие на уровень программной разработки

Коэффициент рейтинга фактора

I группа. Требования к программному изделию

1. Надежность

1,0

2. Сложность программного изделия

1,0

3. Эффективность модели

1,5

4. Размер области данных

1,2

5. Эстетичность и эргономичность интерфейса

0,8

II группа. Характеристики ЭВМ

6. Ограничения по быстродействию

0,8

7. Ограничения по объему памяти

1,0

8. Число обращений к ЭВМ

0,5

III группа. Требования к исполнителям

9. Квалификация оператора

0,5

10. Опыт работы в данной области

1,2

11. Квалификация программиста

1,2

12. Опыт работы с языком

1,0

IV группа. Требования к проекту программной разработки

13. Применение современного программирования

1,2

14. Эффективность алгоритма

1,5

15. Ограничение сроков разработки

0,8

Перемножая все значения 15-и коэффициентов, получаем коэффициент уровня программной разработки:

(3.2)

где Ki - коэффициент рейтинга для i-ого фактора.

Полная трудоемкость разработки в уточненной модели определяется по формуле:

t = KупЧtн = 0,6 Ч 7,22 = 4,60 чел.-мес (3.3)

Рассчитаем трудоемкость по стадиям разработки (техническое задание, этап проектирования, технический проект, рабочий проект, внедрение) по формуле:

(3.4)

где Li - удельный вес трудоемкости i-ой стадии для данной степени новизны АРМ (табл. 3.2);

Kн = 0,7 - поправочный коэффициент, учитывающий степень новизны АРМ;

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

Таблица 3.2 -- Распределение трудоемкости по стадиям разработки АРМ

Код стадии

ТТЗ

ЭЭП

ТТП

РРП

ВВН

Коэффициент удельного веса трудоемкости стадии в общей трудоемкости разработки АРМ

00,09

00,07

00,07

00,61

00,16

Тогда, трудоемкость по стадиям разработки

tТЗ = 0,09 Ч 0,7 Ч 4,60 = 0,29 чел.-мес.

tЭП = 0,07 Ч 0,7 Ч 4,60 = 0,23 чел.-мес.

tТП = 0,09 Ч 0,7 Ч 4,60 = 0,29 чел.-мес.

tРП = 0,61 Ч 0,7 Ч 4,60 = 1,96 чел.-мес.

tВН = 0,16 Ч 0,7 Ч 4,60 = 0,52 чел.-мес.

Уточненная общая трудоемкость разработки АРМ:

(3.5)

Продолжительность разработки АРМ:

(3.6)

Производительность труда группы разработчиков программного изделия:

(3.7)

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

(3.8)

3.2.2 Расчет затрат по созданию программного продукта

Таблица 3.3 -- Расчет затрат на специальное оборудование

Показатель

ЭВМ

Принтер

1. Стоимость, руб.

30963

5000

2. Нормативный срок службы, ч

53658=14600

53658=14600

3.Амортизационные отчисления, руб./ч

30963/14600=2,12

5000/14600=0,3

4. Мощность, кВт

0,14

0,06

5. Цена электроэнергии за 1 час, руб

0,145,48=0,77

0,065,48=0,33

6. Стоимость обслуживания, руб./ч

17500/(208)=109,4

17500/(208)=109,4

7. Время работы, ч

3,93208=628,8

3,93201=78,6

8. Амортизация, руб.

628,82,12=1333,06

78,60,3=23,58

9. Затраты на электроэнергию, руб.

628,80,77=484,18

78,60,33=25,94

10. Затраты на обслуживание, руб.

2109,4=218,8

1109,4=109,4

11. Общие затраты (п.8+п.9+п.10)

2036,04

158,92

Таблица 3.4 -- Расчет стоимости материалов

Наименование

Сумма, руб.

1. Flash носитель 4Gb

230

2. Диск CD-R

30

3. Картридж для принтера

810

4. Бумага

140

5. Письменные принадлежности

20

ИТОГО

1230

Транспортно-заготовительные расходы

30

ВСЕГО

1260

Таблица 3.5 -- Расчет стоимости специального оборудования

Наименование

Сумма, руб.

1. ЭВМ

30963

2. Принтер

5000

ИТОГО

35963

Таблица 3.6 -- Калькуляция статей затрат на разработку АРМ

Наименование статей затрат

Сумма, руб.

Примечания

1. Материалы

1260,00

см. табл. 4.4

2. Специальное оборудование и затраты на ЭВМ

35963,00

см. табл. 4.5

3. Основная зарплата производственного персонала

22000,00

1чел Ч 22000 руб./мес.

4. Уральский коэффициент

3300,00

15% от п.3

5. Начисления на заработную плату

7590,00

30% от п.3+п.4

Фонд социального страхования

733,70

2,9% от п.3+п.4

Пенсионный фонд

5566,00

22% от п.3+п.4

Фонд медицинского страхования

1290,30

5,1% от п.3+п.4

6. Накладные расходы

5609,04

8% от ? (п.1-5)

Общехозяйственные

2103,39

3% от ? (п.1-5)

Управленческие расходы

3505,65

5% от ? (п.1-5)

7. Командировочные расходы

0,00

по смете

8. Контрагентские расходы

0,00

по смете

10. Прочие прямые расходы

3155,09

4,5% от ? (п.1-5)

Поддержка научных работ

1051,70

1,5% от ? (п.1-5)

Поддержка патентной работы

1051,70

1,5% от ? (п.1-5)

Реклама и поддержка научной работы студентов

1051,70

1,5% от ? (п.1-5)

11. Сметная стоимость

78877,13

? (п.1-10)

12. Прибыль

15775,43

20% от п.11

13. Налог на прибыль (упрощенная система налогообложения) 6% от доходов (договорная цена). Налог УСН вправе уменьшить на сумму взносов с заработной платы, но не более чем на 50%. Поскольку сумма взносов высокая то налог УСН равен 3%.

2927,40

3% от п.15

14. Договорная цена

97579,95

? (п.11-13)

Договорная цена копии определяется как частное от деления договорной цены АРМ на предполагаемое количество копий:

(3.9)

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

3.2.3 Расчет цены потребления

Цена потребления определяется по формуле:

Цп = Цпрод. + Ртр. + Рус. + Рут. + ( Рстр. + Рн + Зэк. ) ЧТн (3.10)

где Цпрод. -- продажная цена изделия (копии АРМ);

Ртр. расходы на транспортировку (0,5 % от Цпрод.);

Рус. -- расходы на установку (1,5 % от Цпрод );

Рстр. -- расходы на страхование (0,5 % от Цпрод.);

Рн. -- расходы на налоговые платежи (1 % от Цпрод.);

Рут. -- расходы на утилизацию (0,1 % от Цпрод.);

Зэк. -- годовые затраты на эксплуатацию машинного времени;

Тн. -- нормативный срок службы АРМ (1 год).

Разрабатываемое программное обеспечение будет функционировать: 8 часов в день, 24 дня в месяц, 12 месяцев в году. Исходя из этих данных:

Зэк.=Тм.Ч С=(8ч/дн Ч 24 Ч дн/мес Ч 12мес/год) Ч2,95=6796,8 руб.,(3.11)

где Тм. -- количество машинного времени, потреблённого при эксплуатации АРМ в течение года, ч.;

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

Таблица 3.7 -- Расчёт цены потребления для разработанного АРМ

Показатели

Программный продукт

1. Годовые затраты на эксплуатацию машинного времени

6796,80

2. Годовые страховые платежи (0,5% от п.7 )

487,90

3. Годовые налоговые платежи (1% от п.7 )

975,80

4. Расходы на транспортировку (0,5% от п.7 )

487,90

5. Расходы на утилизацию (0,1% от п.7 )

97,58

6. Расходы на установку (1,5% от п.7)

1463,70

7. Продажная цена

97579,95

8. Цена потребления

107889,63

3.2.4 Анализ экономических показателей внедрения программного продукта

Внедрение разработанного программного продукта позволит существенно снизить затраты на производство за счет оптимизации настроек оборудования. По экспертным оценкам издержки производства сократятся как минимум на 218400 рублей в год за счет сокращения персонала.

Тогда эффективность капиталовложений рассчитывается по формуле:

(3.12)

где k - цена потребления программного продукта.

И составит:

Срок окупаемости составит:

Экономические показатели эффективности разработки и внедрения программного продукта представлены в таблице 3.8.

Таблица 4.8 -- Основные экономические показатели внедрения программного продукта

Показатели

Значения

Продажная цена, руб.

97579,95

Цена потребления, руб.

107889,63

Рентабельность программного продукта, %

20

Эффективность капитальных вложений, %

202

Срок окупаемости, лет

0,49

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

4. Безопасность и комфортность рабочей среды

4.1 Общие положения

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

Выделим основные факторы воздействия на человека при работе с ЭВМ.

При работе с ЭВМ человек может подвергаться воздействию следующих вредных факторов производственной среды: электромагнитных полей (радиочастот), статическому электричеству, шуму, неоптимальных метеорологических условий, недостаточной или неправильной освещенности. Особую нагрузку испытывает зрение пользователя ЭВМ, тоже имеет место недостаточная двигательная активность и психоэмоциональное напряжение. Анализ травматизма среди персонала, работающего с ЭВМ, показывает, что в основном несчастные случаи происходят от воздействия физических опасных производственных факторов, таких как воздействие электрического тока и статического электричества.

4.2 Организация рабочего места оператора ЭВМ

При организации рабочего места оператора ЭВМ следует обратить внимание на обеспечение следующих параметров:

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

ѕ достаточные физические, зрительные и слуховые связи между работающим человеком и ЭВМ;

ѕ наличие естественного и искусственного освещения в достаточной степени, нейтральную окраску интерьера, отсутствие блестящих поверхностей;

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

Помещения для эксплуатации ПЭВМ должны иметь естественное и искусственное освещение. Оконные проемы должны быть оборудованы занавесями или жалюзи. Площадь на 1 рабочее место должна составлять не менее 6 м2.

При использовании ПЭВМ с продолжительностью работ менее 4 часов в день допускается площадь 4,5 м2. При работе за компьютером рекомендуется использовать кресло с высотой сиденья 45 см. Наиболее удобным считается сиденье, имеющее выемку, соответствующую форме бедер, и наклон назад. Спинка стула должна быть изогнутой формы, обнимающей поясницу, радиус изгиба 0,3 - 0,35 м.

Конструкция клавиатуры, должна предусматривать исполнение в виде отдельного устройства с возможностью свободного перемещения и опорное приспособление, позволяющее изменять угол наклона поверхности клавиатуры в пределах от 5 до 15 градусов. Экран видеомонитора должен находиться от глаз пользователя на оптимальном расстоянии 600-700 мм, но не ближе 500 мм с учетом размеров алфавитно-цифровых знаков и символов.

4.3 Организация микроклимата в рабочем помещении

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

Параметры микроклимата на рабочем месте приведены в таблице 4.1

Таблица 4.1 -- Параметры микроклимата на рабочем месте (легкая категория работ)

Наименование параметра

Холодный и переходный период (до 10 град.)

Теплый период

оптимальные

допустимые

оптимальные

допустимые

Температура воздуха, °С

20-22

18-20

25

28

Скорость движения воздуха м/с

0.2

0.3

0.5

0.3

Влажность воздуха, %

40-60

70

40

70

Система вентиляции выполняется в соответствии с требованиями СНиП 11-33-75 « Отопление, вентиляция и кондиционирование воздуха».

4.4 Организация освещения рабочего места

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

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

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

Таблица 4.2 -- Допустимые визуальные параметры устройств отображения информации

Параметр

Значение

Яркость белого поля

Не менее 35 кд/кв.м

Неравномерность яркости рабочего поля

Не более +-20%

Контрастность (для монохромного режима)

Не менее 3:1

Временная нестабильность изображения (непреднамеренное изменение во времени яркости изображения на экране дисплея)

Не должна фиксироваться

Пространственная нестабильность изображения (непреднамеренные изменения положения фрагментов изображения на экране)

Не более 2 х 10(-4L), где L - проектное расстояние наблюдения, мм

Для дисплеев на ЭЛТ частота обновления изображения должна быть не менее 75 Гц при всех режимах разрешения экрана, гарантируемых нормативной документацией на конкретный тип дисплея и не менее 60 Гц для дисплеев на плоских дискретных экранах (жидкокристаллических, плазменных и т.п.).

Естественное освещение должно осуществляться через светопроемы, ориентированные преимущественно на север и северо-восток, и обеспечивать коэффициент естественной освещенности не менее 1,5%.

Искусственное освещение в помещениях эксплуатации видеотерминалов (ВДТ) и персональных ЭВМ должно осуществляться системой общего равномерного освещения. Освещенность на поверхности стола в зоне размещения рабочего документа должна быть 300-500 лК. Согласно СанПиН, в качестве источников света при искусственном освещении должны применяться преимущественно люминесцентные лампы типа ЛБ. Помещение, в котором находится рабочее место оператора, имеет следующие характеристики: длина помещения 6,5 м; ширина помещения 3,8 м; высота 3 м; число окон 3; количество рабочих мест 3; окраска интерьера: белый потолок, бледно-зеленые стены; пол металлический, обтянутый линолеумом зеленого цвета. Площадь на одно рабочее место с ВДТ или ПЭВМ для взрослых пользователей должна составлять не менее 6 м2, а объем не менее 20 м3.

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

4.5 Организация мероприятий по ослаблению влияния источников шума на рабочем месте

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

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

ѕ по ослаблению влияния источников шума на рабочие места;

ѕ по уменьшению шума источников;

ѕ по использованию архитектурно-планировочных решений, направленных на полную или частичную изоляцию источников шума.

Эквивалентный уровень шума на рабочем месте не должен превышать 50 дБ. Печатающие устройства, серверы, уровни шума которых превышают нормы, должны размещаться вне помещений с ПЭВМ. Измерение уровня звука и уровней звукового давления проводится на расстоянии 50 см от поверхности оборудования и на высоте расположения источника звука.

Таблица 4.3 -- Допустимые значения уровней звукового давления в октавных полосах частот и уровня звука, создаваемого ПЭВМ

Уровни звукового давления в октавных полосах со среднегеометрическими частотами

Уровни звука в дБ

31,5 Гц

63 Гц

125 Гц

250 Гц

500 Гц

1000 Гц

2000 Гц

4000 Гц

8000 Гц

50

86 дБ

71 дБ

61 дБ

54 дБ

49 дБ

45 дБ

42 дБ

40 дБ

38 дБ

4.6 Организация мероприятий по ослаблению влияния электромагнитного излучения на рабочем месте

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

Методика проведения инструментального контроля уровней ЭМП на рабочих местах пользователей ПЭВМ представлена ниже. Инструментальный контроль электромагнитной обстановки на рабочих местах пользователей ПЭВМ производится: при вводе ПЭВМ в эксплуатацию и организации новых рабочих мест или при их реорганизации; после проведения организационно-технических мероприятий, направленных на нормализацию электромагнитной обстановки; при аттестации рабочих мест по условиям труда; по заявкам предприятий и организаций.

Инструментальный контроль уровней ЭМП должен осуществляться приборами с допускаемой основной относительной погрешностью измерений ±20%, включенными в Государственный реестр средств измерения и имеющими действующие свидетельства о прохождении Государственной поверки. Занести в протокол сведения об оборудовании рабочего места - наименования устройств ПЭВМ, фирм-производителей, моделей и заводские (серийные) номера. Измерение уровней переменных электрических и магнитных полей, статических электрических полей на рабочем месте, оборудованном ПЭВМ, производится на расстоянии 50 см от экрана на трех уровнях -- на высоте 0,5 м, 1,0 м и 1,5 м. Гигиеническая оценка результатов измерений должна осуществляться с учетом погрешности используемого средства метрологического контроля.

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

Для предупреждения развития переутомления обязательными мероприятиями являются:

ѕ проведение упражнений для глаз через каждые 20-25 минут работы за ВДТ и ПЭВМ;

ѕ проведение во время перерывов сквозного проветривания помещений;

ѕ осуществление во время перерывов упражнений физкультурной паузы в течение 3-4 минут);

ѕ выполнение упражнений физкультминутки в течение 1-2 минут для снятия локального утомления, которые должны выполняться индивидуально при появлении начальных признаков усталости;

ѕ замена комплексов упражнений один раз в 2-3 недели.

4.7 Организация мероприятий от поражения электрическим током

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

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

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

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

Исход поражения человека электротоком зависит от многих факторов: силы тока и времени его прохождения через организм; характеристиками тока; пути тока в теле человека; при переменном токе от частоты колебания.

Допустимым считается ток, при котором можно самостоятельно освободиться от электрической цепи. Переменный ток опаснее постоянного, но при высоком напряжении опаснее постоянный ток (более 500 В). Из возможных путей протекания тока через тело человека наиболее опасен тот, при котором поражается головной мозг, сердце и легкие.

Электрический ожог различных степеней -- следствие коротких замыканий в электроустановках и пребывания тела (как правило, рук) в сфере светового (ультрафиолетового) и теплового (инфракрасного) влияния электрической дуги; ожоги III и IV степени с тяжелым исходом -- при соприкосновении человека (непосредственно или через электрическую дугу) с токоведущими частями напряжением свыше 1000 В.

Таблица 4.4 -- Характеристика воздействия на человека электрического тока различной силы

Сила тока, мА

Переменный ток 50 -- 60 Гц

Постоянный ток

0,6 -- 1,5

Легкое дрожание пальцев рук

Не ощущается

2 -- 3

Сильное дрожание пальцев рук

Не ощущается

5 -- 7

Судороги в руках

3yд. Ощущение нагревания

8 -- 10

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

Усиление нагревания

20 -- 25

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

Еще большее усиление нагревания, незначительное сокращение мышц рук

50 -- 80

Паралич дыхания. Начало трепетания желудочков сердца

Сильное ощущение нагревания. Сокращение мышц рук. Судороги. Затруднение дыхания

90 -- 100

Паралич дыхания и сердца при воздействии более 0,1 с.

Паралич дыхания

4.8 Организация противопожарной безопасности

Сами ЭВМ и периферийное оборудование представляют высокую пожароопасность вследствие высокой концентрации электронных схем, использования горючих конструктивных материалов и высокой температуры некоторых устройств. Для отвода избыточной теплоты от ЭВМ служат системы вентиляции и кондиционирование воздуха.

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

Таблица 4.5 -- Характеристика пожароопасных свойств веществ

Название вещества

Температура

Конц. пределы распространения пламени, % о.б

Другие характеристики

воспламенения, ° С

самовоспламенения, ° С

Бумага (канцелярская, обои)

230

230

Бумажная пыль

Горюча, скорость выгорания 8·10-3 кг/(м2с), бумажная пыль взрывоопасна.

Деревянная мебель (древесина сосновая)

255

399

Нижний предел 34

Горюча, склонна к тепловому самовозгоранию, давление взрыва 520 кПа.

Плита древесноволокнистая (ДВП)

222

345

-

Горюча, склонна к тепловому самовозгоранию.

Пластик декоративный

-

-

-

Горюч, средняя скорость распространения пламени 2,8·10-2м/с.

Канцелярские товары из полимерных пленок

-

-

-

Полиэтилен - горюч, tпл = (120-138)°С; полистирол - горюч, теплостойкость 80°С.

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

Таблица 4.6 -- Характеристики пожара класса А

Класс пожара

Характеристика класса

Подкласс пожара

Характеристика подкласса

Рекомендуемые средства тушения

А

Горение твердых веществ

А1

Горение твёрдые вещества сопровождаемое тлением (древесина, бумага)

Вода со смачивателем, хладоны, порошки АВС

А2

Горение твёрдые вещества без тления (пластик декоративный, канцелярские принадлежности)

Все виды огнетушащих средств

Для предотвращения пожара необходимы следующие меры:

а) предотвращение образования горючей среды;

б) предотвращение образования в горючей среде источников зажигания;

в) поддержание температуры и давления горючей среды ниже максимально допустимых по горючести;

г) уменьшение определяющего размера горючей среды ниже максимально допустимого по горючести.

Противопожарную защиту обеспечивают следующие меры:

а) максимально возможное применение негорючих и трудно горючих веществ и материалов вместо материалов пожароопасных;

б) ограничение количества горючих веществ и их надлежащее размещение;

в) изоляция горючей среды;

г) предотвращение распространения пожара за пределы очага;

д) применение средств пожаротушения;

е) применение конструкций объектов с регламентированным пределом огнестойкости и горючестью;

ж) эвакуация людей;

з) применение средств коллективной и индивидуальной защиты;

и) применение средств пожарной сигнализации и средств извещения о пожаре;

к) организация пожарной охраны объекта.

Организационными мероприятиями по обеспечению пожарной безопасности являются:

ѕ обучение рабочих и служащих правилам пожарной безопасности;

ѕ разработка и реализация норм и правил пожарной безопасности, инструкций о порядке работы с пожароопасными веществами и материалами;

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

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

При возникновении аварийной ситуации пользователь ЭВМ обязан:

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

2) при обнаружении человека, попавшего под напряжение, немедленно освободить его от действия тока путем отключения электропитания и до прибытия врача оказать потерпевшему первую медицинскую помощь;

3) при любых случаях сбоя в работе технического оборудования или программного обеспечения немедленно вызвать инженера электронщика;

4) в случае рези в глазах, резком ухудшении видимости -- невозможности усиления сердцебиения -- немедленно покинуть рабочее место, сообщить о происшедшем руководителю работ и обратиться к врачу;

5) при возгорании оборудования отключить питание и принять меры к тушению очага пожара при помощи углекислотного или порошкового огнетушителя, вызвать пожарную команду и сообщить о происшествии руководителю работ.

ЗАКЛЮЧЕНИЕ

В ходе разработки выпускной квалификационной работы рассмотрена проблема автоматизации рабочего места кассира-операциониста в ООО «Расчетно-кассовый центр».

При рассмотрении данной проблемы были выполнены следующие операции:

1) изучена деятельность предприятия, проанализирована предметная область, проанализирован рынок существующих разработок;

2) спроектирована структура АРМ кассира-операциониста;

3) разработан алгоритм функционирования АРМ кассира-операциониста;

4) разработан механизм обмена данными АРМ кассира-операциониста с существующей информационной системой;

5) разработаны программные модули АРМ кассира-операциониста.

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

Также дано описание машинной реализации комплекса задач, включающей в себя схемы:

1) взаимосвязей программных модулей и информационных файлов;

2) схему работы подсистем.

Разработанная подсистема помимо выполнения основной поставленной цели позволяет также:

1) облегчить работу не только кассира-операциониста, но и всего предприятия в целом;

2) повысит производительность труда;

3) информация станет более доступной;

4) снизится вероятность появления ошибок в отчетности.

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

Усовершенствование может происходить:

1) при добавлении других типов оплаты;

2) при выполнении сбора платежей для сторонних поставщиков услуг населению.

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1. Архангельский А.Я. Программирование в Delphi 2005 / А.Я. Архангельский. - М.: Бином-Пресс, 2006. - 1152 c. - ISBN 5-9518-0042-0.

2. Бакнелл Д.М. Фундаментальные алгоритмы и структуры данных в Delphi. - СПб.: «ДиаСофтЮП», 2003. - 560 с.

3. Боровский А.Н. Программирование в Delphi 2005. - СПб.: БХВ-Петербург, 2005. - 448 с.: ил.

4. Бобровский С.И. Delphi 7. Учебный курс - СПб.: Питер, 2005. - 736 с.: ил.

5. Голицына О.Л., Максимов Н.В., Попов И.И. "Базы данных", М.: ФОРУМ: ИНФРА-М, 2007.

6. Дейт К.Дж. Введение в системы баз данных. - К.; М.; СПб.: Издательский дом "Вильямс", 1999. - 848 с.

7. Епанешников А., Епанешников В. Программирование в среде Turbo Pascal 7.0. - 3-е изд., стер. - М.: ДИАЛОГ-МИФИ, 1995. - 288 с.

8. Конноли Т., Бегг К., Страган А. Базы данных: проектирование, реализация и сопровождение. Теория и практика. - М.: Издательский дом "Вильямс", 2000. - 1120 с.

9. Липаев В.В. Системное проектирование сложных программных средств для информационных систем. - М.: СИНТЕГ, 1999. - 142.

10. Мамиконов А.Г., Кульба В.В., Косяченко С.А., Ужастов И.А. "Оптимизация структур распределенных баз данных.", М., "Наука", 1990.

11. Мейер Д. "Теория реляционных баз данных", М., "Мир", 1987.

12. Орлов С.А. Технологии разработки программного обеспечения. - СПб.: Питер, 2007. - 464 с.

13. Пестриков В.М., Маслобоев А.Н. Delphi на примерах. - СПб.: БХВ-Петербург, 2005. - 496 с.: ил.

14. Рапаков Г.Г., Ржеуцкая С.Ю. Turbo Pascal для студентов и школьников. - СПб.: БХВ-Петербург, 2002. - 352 с.: ил.

15. Сухарев М.В. Основы Delphi. Профессиональный подход - СПб.: Наука и Техника, 2004. - 600 с.: ил.

16. Шаймарданов Р.Б. "Моделирование и автоматизация проектирования структур БД.", М., "Радио и связь", 2005г.

17. Проектирование пользовательского интерфейса на персональных компьютерах. Стандарт фирмы IBM.- М.: Издательство "Лев", 2006. - 186 с.

18. Интернет ресурс http://www.delphimaster.ru/

19. Интернет ресурс http://www.delphikingdom.com/index.asp

20. Интернет ресурс http://www.delphisite.ru/

21. Мейер Д. "Теория реляционных баз данных", М., "Мир", 2006.

22. Орлов С.А. Технологии разработки программного обеспечения. - СПб.: Питер, 2007. - 464 с.

23. Пестриков В.М., Маслобоев А.Н. Delphi на примерах. - СПб.: БХВ-Петербург, 2005. - 496 с.: ил.

24. Рапаков Г.Г., Ржеуцкая С.Ю. Turbo Pascal для студентов и школьников. - СПб.: БХВ-Петербург, 2002. - 352 с.: ил.

25. Сухарев М.В. Основы Delphi. Профессиональный подход - СПб.: Наука и Техника, 2004. - 600 с.: ил.

26. Шаймарданов Р.Б. "Моделирование и автоматизация проектирования структур БД.", М., "Радио и связь", 2005г.

27. Проектирование пользовательского интерфейса на персональных компьютерах. Стандарт фирмы IBM.- М.: Издательство "Лев", 2006. - 186 с.

28. Интернет ресурс http://www.delphimaster.ru/

29. Интернет ресурс http://www.delphikingdom.com/index.asp

30. Интернет ресурс http://www.delphisite.ru/

ПРИЛОЖЕНИЯ А

Листинг главного модуля АРМ «Кассир»

unit MainForm;

procedure TfmMain.Reports;

begin

if BtnYes=True

then begin

Case Report of

1:begin

EnableButtons(False);

Try

ECR.Password:=StrToInt(AdminPassw);

if ECR.PrintReportWithoutCleaning=0 Then

else fmMain.paResultCode.Caption:=IntToStr(ECR.resultCode)+': '+ECR.ResultCodeDescription;

Finally

EnableButtons(True);

End;

end;

2:begin

EnableButtons(False);

Try

ECR.Password:=StrToInt(AdminPassw);

if ECR.PrintReportWithCleaning=0 Then fmPayAdd.ShowModal

else fmMain.paResultCode.Caption:=IntToStr(ECR.resultCode)+': '+ECR.ResultCodeDescription;

Finally

EnableButtons(True);

End;

end;

end;

end;

end;

procedure TfmMain.WinShowing;

begin

if PasswOK<2

then begin

nbMain.ActivePage:='Login';

end;

if PasswOK=2

then begin

nbMain.ActivePage:='Work';

if CurrentUser=Admin

then begin

cbZero.Visible:=True;

cbZero.Checked:=True;

buF2.Enabled:=True;

buF3.Enabled:=True;

buF4.Enabled:=True;

buF5.Enabled:=True;

buF6.Enabled:=True;

paHotKey.Visible:=True;

kcPayDep.SetFocus;

end

else begin

paHotKey.Visible:=True;

kcPayDep.SetFocus;

end;

end;

end;

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

begin

fmOnExit.ShowModal;

if Report<>0

then begin

fmMess.ShowModal;

end

else begin

CanClose:=False;

end;

Reports;

end;

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

begin

if Report<>0 then AppExit;

end;

procedure TfmMain.buF9Click(Sender: TObject);

begin

Report:=1;

fmMess.ShowModal;

if BtnYes=True

then begin

// Комманда X-отчет

Reports;

end;

end;

procedure TfmMain.buF10Click(Sender: TObject);

begin

Report:=2;

fmMess.ShowModal;

if BtnYes=True

then begin

// Комманда Z-отчет

Reports;

end;

end;

procedure TfmMain.buF2Click(Sender: TObject);

Var n:Integer;

begin

EnableButtons(False);

Try

ECR.Password:=StrToInt(CurrentPassw);

ECR.ShowProperties;

For n:=0 to ComboBox1.Items.Count-1 Do

If ECR.ComNumber=StrToInt(copy(ComboBox1.Items[n],4,255)) Then Begin

ComboBox1.ItemIndex:=n;

Break;

End;

ComboBox2.ItemIndex:=ECR.Baudrate;

SpinEdit1.Value:=ECR.Timeout;

case Integer(ECR.UModel) of

0: Size:=36;

1: Size:=40;

2: Size:=24;

3: Size:=20;

4: Size:=36;

else Size:=40;

end;

Finally

EnableButtons(True);

End;

end;

procedure TfmMain.FormCreate(Sender: TObject);

begin

Connection;

WorkDate:=Date();

Width:=800;

Height:=600;

laWorkPC.Caption:=IntToStr(WorkPC);

laDate.Caption:=DateToStr(WorkDate);

nbMain.ActivePage:='Login';

DM.ADOConnection.Connected:=True;

DM.taPayType.Filter:='org='+IntToStr(vOrg);

DM.taPayment.Filter :='PayDate = ''' + DateToStr(WorkDate) + '''';

DM.taPayment.Filtered:=True;

DM.taPayType.Active:=True;

DM.taPayment.Active:=True;

DM.quDOLG_m.Active:=True;

cbPayTypeFilter.DropDownBox.Rows:=DM.taPayType.RecordCount;

ReadPayTypTable;

kcPayDep.ItemIndex:=0;

kcKvitType.ItemIndex:=0;

Caption := Caption + ' ' + GetFileVersionInfoStr;

DepartmentChange;

end;

procedure TfmMain.buF3Click(Sender: TObject);

begin

F3.Enabled:=False;

buF3.Enabled:=False;

Memo1.Clear;

EnableButtons(False);

Try

ECR.Password:=StrToInt(CurrentPassw);

If ECR.GetECRStatus=0 Then Begin

gsUser.Caption:=CurrentUser;

With Memo1.Lines Do Begin

Add('ПО ФР:');

Add(#9'Версия: '+ECR.ECRSoftVersion);

Add(#9'Сборка: '+IntToStr(ECR.ECRBuild));

Add(#9'Дата: '+DateToStr(ECR.ECRSoftDate));

Add('ПО ФП:');

Add(#9'Версия: '+ECR.FMSoftVersion);

Add(#9'Сборка: '+IntToStr(ECR.FMBuild));

Add(#9'Дата: '+DateToStr(ECR.FMSoftDate));

Add('Флаги ФР:<'+IntToStr(ECR.ECRFlags)+'>');

Add(#9'Рулон контрольной ленты '+ECRFlagsToStr(0));

Add(#9'Рулон чековой ленты '+ECRFlagsToStr(1));

Add(#9'Подкладной документ '+ECRFlagsToStr(2));

Add(#9'Подкладной документ проходит под датчиком '+ECRFlagsToStr(3));

Add(#9'Положение десятичной точки '+ECRFlagsToStr(4));

Add(#9'ЭКЛЗ '+ECRFlagsToStr(5));

Add(#9'Оптический датчик контр. ленты '+ECRFlagsToStr(6));

Add(#9'Оптический датчик чек. ленты '+ECRFlagsToStr(7));

Add(#9'Рычаг термоголовки контр. ленты '+ECRFlagsToStr(8));

Add(#9'Рычаг термоголовки чек. ленты '+ECRFlagsToStr(9));

Add(#9'Крышка корпуса ФР '+ECRFlagsToStr(10));

Add(#9'Отказ левого датчика принтера '+ECRFlagsToStr(11));

Add(#9'Отказ правого датчика принтера '+ECRFlagsToStr(12));

Add(#9'Денежный ящик '+ECRFlagsToStr(13));

Add(#9'ЭКЛЗ почти заполнена '+ECRFlagsToStr(14));

Add('Флаги ФП:<'+IntToStr(ECR.FMFlags)+'>');

Add(#9'ФП1 '+FMFlagsToStr(0));

Add(#9'ФП2 '+FMFlagsToStr(1));

Add(#9'Лицензия '+FMFlagsToStr(2));

Add(#9'Переполнение ФП '+FMFlagsToStr(3));

Add('Номер ККМ в зале: '+IntToStr(ECR.LogicalNumber));

Add('Номер документа: '+IntToStr(ECR.OpenDocumentNumber));

Add('Порт ФР: '+IntToStr(ECR.PortNumber));

Add('Режим ФР: '+IntToStr(ECR.ECRMode)+ ' '+ECR.ECRModeDescription);

Add('Подрежим ФР: '+IntToStr(ECR.ECRAdvancedMode)+ ' '+ECR.ECRAdvancedModeDescription);

Add('Кол-во фискализаций: '+IntToStr(ECR.RegistrationNumber));

Add('Кол-во оставшихся фискализаций: '+IntToStr(ECR.FreeRegistration));

Add('Последняя закрытая смена: '+IntToStr(ECR.SessionNumber));

Add('Свободных записей в ФП: '+IntToStr(ECR.FreeRecordInFM));

Add('Дата: '+DateToStr(ECR.Date));

Add('Время: '+TimeToStr(ECR.Time));

Add('Заводской номер: '+ECR.SerialNumber);

Add('ИНН: '+ECR.INN);

End;

End

Else

gsUser.Caption:='???';

Finally

EnableButtons(True);

End;

nbPanel.ActivePage:='STATUS';

end;

procedure TfmMain.FormShow(Sender: TObject);

var

i: Word;

ss: string;

begin

WinShowing;

cbUsers.Items.Clear;

For i:=1 to MaxNumUser do

begin

ECR.Password:=StrToInt(AdminPassw);

ECR.TableNumber:=2;

ECR.RowNumber:=i;

ECR.FieldNumber:=2;

If ECR.ReadTable=0 then begin

ss:=ECR.ValueOfFieldString;

cbUsers.Items.Add(ECR.ValueOfFieldString);

end;

end;

CountAccess:=1;

cbUsers.Text:='';

edPassword.Text:='';

cbUsers.SetFocus;

nbPanel.ActivePage:='PAY';

if mxProtector.IsRegistered=False

then begin

fmProtector.ShowModal;

Caption:='АРМ КАССИР - ДЕМО ВЕРСИЯ';

laOrgName.Caption:=Demo1;

laVersion.Caption:=Demo2;

laBuild.Caption:=Build;

end

else begin

Caption:='АРМ КАССИР';

Case vOrg of

1: laOrgName.Caption:='ООО "РАСЧЕТНО-КАССОВЫЙ ЦЕНТР"';

end;

laVersion.Caption:=Ver;

laBuild.Caption:=Build;

end;

paPokaz.Visible:=False;

edOLD1.Text:='';

edNEW1.Text:='';

edSumm1.Value:=0;

edOLD2.Text:='';

edNEW2.Text:='';

edSumm2.Value:=0;

edSum.ReadOnly:=False;

edOLD3.Text:='';

edNEW3.Text:='';

edSumm3.Value:=0;

edFIO.Text:='';

edUl.Text:='';

edNdom.Text:='';

edNkv.Text:='';

end;

function TfmMain.Payment_Locate(gu, lso : String):Boolean;

begin

DM.taPaymentFind.Filter:='IdPayType='+IntToStr(vDepartment);

DM.taPaymentFind.Active:=True;

if gu='' then

if not DM.taPaymentFind.Locate ('Lso', lso,[])

then Payment_Locate:=False

else Payment_Locate:=True

else

if not DM.taPaymentFind.Locate ('Gu;Lso', VarArrayOf([gu, lso]),[])

then Payment_Locate:=False

else Payment_Locate:=True;

end;

function TfmMain.DOLG_Locate(gu, lso: String):Boolean;

begin

if gu='' then

if not DM.quDOLG_m.Locate ('Lso', lso,[])

then DOLG_Locate:=False

else DOLG_Locate:=True

else

if not DM.quDOLG_m.Locate ('Gu;Lso', VarArrayOf([gu, lso]),[])

then DOLG_Locate:=False

else DOLG_Locate:=True;

end;

function TfmMain.Abon_Locate(lso : String):Boolean;

begin

if not DM.taAbon.Locate ('A', lso,[])

then Abon_Locate:=False

else Abon_Locate:=True;

end;

function TfmMain.CHILD_Locate(ID : String):Boolean;

begin

if not DM.taCHILD.Locate ('ID', VarArrayOf([ID]),[])

then CHILD_Locate:=False

else CHILD_Locate:=True;

end;

procedure TfmMain.buF4Click(Sender: TObject);

begin

if nbPanel.ActivePage='PAY'

then begin

nbPanel.ActivePage:='LCD';

buF4.Caption:='F4-Сбор'

end

else begin

nbPanel.ActivePage:='PAY';

buF4.Caption:='F4-Табло'

end;

F3.Enabled:=True;

buF3.Enabled:=True;

end;

procedure TfmMain.buF1Click(Sender: TObject);

begin

fmAbout.ShowModal;

end;

procedure TfmMain.edLsoChange(Sender: TObject);

begin

LED.Caption:=edLso.Text;

end;

procedure TfmMain.Key_Enter_Esc_Press(Sender: TObject; var Key: Char);

begin

Case Key of

#13: // Клавиша ENTER

begin

SelectNext(Sender as TWinControl, True, True );

Key := #0;

end;

#27: // Клавиша ESC

begin

Key := #0;

ClearField;

end;

end;

end;

procedure TfmMain.buResetClick(Sender: TObject);

begin

ClearField;

end;

procedure TfmMain.edGuExit(Sender: TObject);

begin

if not ResetKey

then begin

if Length(edGu.Text) = 0

then begin

MessageDlg('В поле "ЖЭУ" должно быть значение!', mtError, [mbOk], 0);

edGu.SetFocus;

Exit

end;

Val(edGu.Text,CurrentGu,code);

if code <> 0

then begin

MessageDlg('В поле "ЖЭУ" должно быть число!!!', mtError, [mbOk], 0);

edGu.SetFocus;

Exit

end

end;

end;

procedure TfmMain.edLsoExit(Sender: TObject);

var

s1,s2,s3 : String;

begin

if not ResetKey then

begin // *** ResetKey=False *** //

Val(edLso.Text,CurrentLso,code);

if (code <> 0) //and (vDepartment<>2)

then begin

MessageDlg('Значение поля должно быть числовым', mtError, [mbOk], 0);

edLso.Text:='';

edLso.SetFocus;

Exit

end

else if PayType[vDepartment].Base=True

then

Case PayType[vDepartment].BaseType of

//************************************************************

1:begin // *** Case 1 [BaseType=1] поиск в файле DOLG.DBF - массив квитанций выданных в этом месяце *** //

if fmMain.DOLG_Locate(edGU.Text,edLso.Text)

then begin // *** DOLG_Locate=True *** //

LsoFound:=True;

laFIO.Caption:=DM.quDOLG_mFIO.Value;

laAddress.Caption:='ул. '+DM.quDOLG_mUL.Value+

', д. '+IntToStr(DM.quDOLG_mNDOM.Value);

if DM.quDOLG_mNKORP.Value<>''

then laAddress.Caption:=laAddress.Caption+', кор. '+

Trim(DM.quDOLG_mNKORP.Value);

laAddress.Caption:=laAddress.Caption+', кв. '+IntToStr(DM.quDOLG_mNKV.Value);

edFIO.Text:=DM.quDOLG_mFIO.Value;

edUl.Text:=DM.quDOLG_mUL.Value;

if DM.quDOLG_mNKORP.Value<>''

then edNdom.Text:=IntToStr(DM.quDOLG_mNDOM.Value)+DM.quDOLG_mNKORP.Value

else edNdom.Text:=IntToStr(DM.quDOLG_mNDOM.Value);

edNkv.Text:=IntToStr(DM.quDOLG_mNKV.Value);

end // *** DOLG_Locate=True *** //

else begin // *** DOLG_Locate=False *** //

if MessageDlg('Л/счета НЕТ в текущей БАЗЕ, добавить даные плательщика?', mtConfirmation, [mbYes,mbNo], 0)=mrYes // MessageDlg ('Л/счет не существует !', mtWarning, [mbOk], 0);

then begin

LsoFound:=False;

fmAddAbonElk.ShowModal;

laFIO.Caption:=edFIO.Text;

if (edUl.Text<>'') and (edNDOM.Text<>'')

then begin

laAddress.Caption:='ул. '+edUL.Text+

', д. '+edNDOM.Text;

if edNKV.Text<>''

then laAddress.Caption:=laAddress.Caption+', кв. '+edNKV.Text;

end;

end

else edLso.SetFocus;

end; // *** DOLG_Locate=False *** //

if kcKvitType.ItemIndex<>0

then

else begin

if fmMain.ckDOLG.Checked

then //InPaySum:=fmMain.quDOLG_mSUM_S3.Value // 28.09.10

else InPaySum:=DM.quDOLG_mSUM_S7.Value; // 28.09.10

s1:='SELECT GU, LSO, H1, S1, SUM( S7 ) as SUM_S7 FROM Dolg';

if DM.quDOLG_mSUM_S7.Value<>0

then s2:=' WHERE (GU = '+edGu.Text+') AND (LSO = '+edLso.Text+') AND S7<>0'

else s2:=' WHERE (GU = '+edGu.Text+') AND (LSO = '+edLso.Text+')';

s3:=' GROUP BY GU, LSO, H1, S1 ORDER BY GU, LSO, S1;';

DM.quDOLG_p2.Active:=False;

DM.quDOLG_p2.SQL.Clear;

DM.quDOLG_p2.SQL.Add(s1+s2+s3);

DM.quDOLG_p2.ExecSQL;

DM.quDOLG_p2.Active:=True;

end;

InPaySum:=DM.quDOLG_mSUM_S7.Value;

edSum.Value:=InPaySum;

end; // *** Case 1 *** //

//************************************************************

2:begin // *** Case 2 [BaseType=2] поиск в таблице ABON.DBF - таблица абоненты ПЭСК эл.энергия *** //

if Scaner=False

then

if fmMain.Abon_Locate{(COPY(edLso.Text,4,8))} (edLso.Text)

then begin // *** Abon_Locate=True *** //

LsoFound:=True;

edFIO.Text:=DM.taAbonJ.Value;

edUl.Text:=DM.taAbonD.Value;

edNdom.Text:=DM.taAbonE.Value;

edNkv.Text:=DM.taAbonF.Value;

laFIO.Caption:=DM.taAbonJ.Value;

laAddress.Caption:='ул. '+DM.taAbonD.Value+

', д. '+DM.taAbonE.Value+

', кв. '+DM.taAbonF.Value;

edNEW1.SetFocus;

end // *** Abon_Locate=True *** //

else begin // *** Abon_Locate=False *** //

laFIO.Caption:='Абонента НЕТ в текущей БАЗЕ !!!';

laAddress.Caption:='';

edFIO.Text:='';

edUl.Text:='';

edNdom.Text:='';

edNkv.Text:='';

vStringForPrinting:=Trim(PayType[vDepartment].GuPrn+edGu.Text+' '+

Trim(PayType[vDepartment].LsoPrn)+

Trim(PayType[vDepartment].Pref)+Trim(edLso.Text));

edNEW1.SetFocus;

end; // *** Abon_Locate=False *** //

end; // *** Case 2 *** //

//************************************************************

3:begin // *** Case 3 [BaseType=3] поиск в таблице CHILD.DB - таблица учебных заведений *** //

if CHILD_Locate(edLso.Text)

then begin

LsoFound:=True;

vStringForPrinting:=Trim(PayType[vDepartment].LsoPrn)+Trim(DM.taChildLSO.Value);

laFIO.Caption:=Trim(PayType[vDepartment].LsoPrn)+Trim(DM.taChildLSO.Value);

laAddress.Caption:=DM.taChildNAME.Value;

end

else begin

laFIO.Caption:='Л/счета НЕТ в текущей БАЗЕ !!!';

edLso.SetFocus;

end;

end; // *** Case 3 *** //

//*********************************************************

4:begin // *** Case 4 [BaseType=4] *** //

Label11.Caption:=edGu.Text;

if fmMain.DOLG_Locate(edGU.Text,edLso.Text)

then begin // *** DOLG_Locate=True *** //

LsoFound:=True;

laFIO.Caption:=DM.quDOLG_mFIO.Value;

laAddress.Caption:='ул. '+DM.quDOLG_mUL.Value+

', д. '+IntToStr(DM.quDOLG_mNDOM.Value);

if DM.quDOLG_mNKORP.Value<>''

then laAddress.Caption:=laAddress.Caption+', кор. '+

Trim(DM.quDOLG_mNKORP.Value);

laAddress.Caption:=laAddress.Caption+', кв. '+IntToStr(DM.quDOLG_mNKV.Value);

edFIO.Text:=DM.quDOLG_mFIO.Value;

edUl.Text:=DM.quDOLG_mUL.Value;

if DM.quDOLG_mNKORP.Value<>''

then dNdom.Text:=IntToStr(DM.quDOLG_mNDOM.Value)+DM.quDOLG_mNKORP.Value

else edNdom.Text:=IntToStr(DM.quDOLG_mNDOM.Value);

edNkv.Text:=IntToStr(DM.quDOLG_mNKV.Value);

end // *** DOLG_Locate=True *** //

else begin // *** DOLG_Locate=False *** //

if MessageDlg('Л/счета НЕТ в текущей БАЗЕ, добавить даные плательщика?', mtConfirmation, [mbYes,mbNo], 0)=mrYes // MessageDlg ('Л/счет не существует !', mtWarning, [mbOk], 0);

then begin

LsoFound:=False;

fmAddAbonElk.ShowModal;

laFIO.Caption:=edFIO.Text;

if (edUl.Text<>'') and (edNDOM.Text<>'')

then begin

laAddress.Caption:='ул. '+edUL.Text+', д. '+edNDOM.Text;

if edUl.Text<>''

then laAddress.Caption:=laAddress.Caption+', кв. '+edNKV.Text;

end;

end

else edLso.SetFocus;

end; // *** DOLG_Locate=False *** //

end; // *** Case 4 *** //

//************************************************************

5:begin // *** Case 5 [BaseType=5] поиск в PAYMENT - прошлые платежи

if Payment_Locate(edGu.Text, edLso.Text)

then begin

LsoFound:=True;

laFIO.Caption:=DM.taPaymentFindFio.Value;

laAddress.Caption:='ул. '+DM.taPaymentFindUl.Value+

', д. '+DM.taPaymentFindNdom.Value+

', кв. '+DM.taPaymentFindNkv.Value;

end

else begin

laFIO.Caption:='Л/счет НЕ НАЙДЕН в текущей БАЗЕ !!!';

if MessageDlg('Л/счет НЕ НАЙДЕН в текущей БАЗЕ, добавить даные плательщика?', mtConfirmation, [mbYes,mbNo], 0)=mrYes // MessageDlg ('Л/счет не существует !', mtWarning, [mbOk], 0);

then begin

fmAddAbonElk.ShowModal;

laFIO.Caption:=edFIO.Text;

laAddress.Caption:='ул. '+edUL.Text+

', д. '+edNDOM.Text+

', кв. '+edNKV.Text;

end

else edLso.SetFocus;

end;

end; // Case 5 //

End; // *** Case PayType[vDepartmen].BaseType of *** //

vStringForPrinting:=Trim(PayType[vDepartment].GuPrn+edGu.Text+' '+

Trim(PayType[vDepartment].LsoPrn)+

Trim(PayType[vDepartment].Pref)+

Trim(edLso.Text));

if vDepartment>2 then

laFIO.Caption:=vStringForPrinting;

end; // *** ResetKey=False *** //

end;

procedure TfmMain.edSumExit(Sender: TObject);

begin

if not ResetKey then

begin

if edSum.Value=0

then begin

MessageDlg('Не введено значение поля "Сумма"', mtError, [mbOk], 0);

edSum.SetFocus

end;

if edSum.Value>StrToCurr(MaxSummaStr)

then begin

MessageDlg('Значение поля "Сумма" больше '+MaxSummaStr, mtError, [mbOk], 0);

edSum.SetFocus

end;

PaySum:=edSum.Value;

if PayType[vDepartment].Percent<>0 then

begin

PayPercent:=PaySum*(PayType[vDepartment].Percent/100);

edPayPercent.Caption:=FormatFloat('0.00',PayPercent);

end;

if (LsoFound=True) and (PaySum<>InPaySum) {and (InPaySum<>0)} and (vDepartment=1){(PayType[vDepartment].PayNum=1) and (kcKvitType.ItemIndex=0)} then

fmPostSum.ShowModal

else InPaySum:=PaySum;

end;

PayAll:=PaySum;

edPayAll.Caption:=FormatFloat('0.00',PayAll+PayPercent);

edMoney.Value:=PayAll+PayPercent;

end;

procedure TfmMain.edMoneyExit(Sender: TObject);

begin

if not ResetKey

then begin

if (edMoney.Value=0) or (edMoney.Value<edSum.Value)

then begin

MessageDlg('Не введено значение поля "Получено"', mtError, [mbOk], 0);

edMoney.SetFocus

end

else edDelivery.Caption:=FormatFloat('0.00',edMoney.Value-StrToFloat(edPayAll.Caption));

end;

if ((PaySum<>InPaySum) and (pSummSum=0)) and ({PayType[}vDepartment{].PayNum}=1)

then begin

MessageDlg('Сумма платежа меньше суммы к оплате, разбейте сумму по потавщикам !!!', mtError, [mbOk], 0);

edMoney.Value:=0;

edSum.SetFocus

end;

end;

procedure TfmMain.cbPayTypeFilterKeyValueChanged(Sender: TObject);

begin

UpdatePaymentFilter;

end;

procedure TfmMain.edGuChange(Sender: TObject);

begin

LED.Caption:=edGu.Text;

end;

procedure TfmMain.buF5Click(Sender: TObject);


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

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