А. Описание учебной базы данных

Жилищно-коммунальное хозяйство является одной из основных составляющих (компонентов, элементов, областей) народного хозяйства РФ, охватывающей многоотраслевой производственно-технический комплекс, потребность в продукции которого практически не ограничена. Индустрия ЖКХ представлена жилыми, общественными зданиями, эксплуатационными, управляющими, ремонтно-строительными, транспортными, ресурсоснабжающими и другими предприятиями, составляющими сложную социально-экономическую систему, от результативности функционирования которой зависит развитие городских объектов и состояние среды обитания жителей городов и других населенных пунктов.

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

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

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

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

  • • расчет размера платы за коммунальную услугу при отсутствии показаний прибора учета (счетчика), исходя из рассчитанного среднемесячного или нормативного объема расхода потребителем коммунального ресурса (объема потребления коммунальной услуги);
  • • использование в расчетах дифференцированной ставки процента пени в зависимости от числа дней образования просроченной задолженности;
  • • применение дифференцированного повышающего коэффициента для абонентов, имеющих техническую возможность, но не установивших приборы учета коммунальных ресурсов;
  • • расчет объемов коммунальных ресурсов, расходуемых на общедомовые нужды;
  • • расчет с применением многотарифного учета объемов расходуемого коммунального ресурса;
  • • дифференцированный расчет за централизованное отопление в зависимости от года и материала постройки дома, а также его этажности;
  • • обеспечение интеграции информационных систем муниципального и регионального уровней с государственной информационной системой жилищно-коммунального хозяйства (ГИС ЖКХ).

Учебная БД представляет собой очень упрощенный пример информационной модели расчетно-аналитической составляющей «Абонент» расчетно-платежного комплекса «Абонент+», которая используется для информационного обеспечения деятельности организаций по оказанию населению жилищно-коммунальных услуг и расчетам за них [5]. Учебная БД состоит из восьми таблиц: пяти таблиц-справочников и трех информационных таблиц (таблиц фактов).

В учебной БД используются такие таблицы-справочники:

  • 1) Street. Справочник улиц города, в домах которых проживают абоненты. Столбцы таблицы:
    • • StreetCD — уникальный код улицы (первичный ключ),
    • • StreetNM — название улицы, расшифровывающее код улицы;
  • 2) Abonent. Справочник абонентов города. Столбцы таблицы:
    • • AccountCD — номер лицевого счета абонента, уникальным образом идентифицирующий каждого из абонентов (первичный ключ),
    • • StreetCD — код улицы, на которой проживает абонент (внешний ключ, ссылающийся на первичный ключ таблицы Street),
    • • HouseNo — номер дома, в котором проживает абонент,
    • • FlatNo — номер квартиры,
    • • Fio — фамилия, имя и отчество абонента в формате «Фамилия И. О.»,
    • • Phone — номер телефона;
  • 3) Services. Справочник услуг, оказываемых абонентам жилищно- коммунальными организациями. Столбцы таблицы:
    • • ServiceCD — код услуги (первичный ключ),
    • • ServiceNM — наименование услуги;
  • 4) Disrepair. Справочник типовых неисправностей газового оборудования абонентов. Столбцы таблицы:
  • • FailureCD — код неисправности газового оборудования (первичный ключ),
  • • FailureNM — наименование неисправности газового оборудования;
  • 5) Executor. Справочник исполнителей заявок, поданных абонентами на ремонт газового оборудования. Исполнителями являются работники ремонтной службы газораспределительной организации, оказывающей соответствующие услуги. Столбцы таблицы:
    • • ExecutorCD — уникальный код, идентифицирующий исполнителей ремонтных заявок (первичный ключ),
    • • Fio — фамилия, имя и отчество исполнителя в формате «Фамилия И. О.».

В качестве информационных таблиц учебной БД выделены следующие таблицы:

  • 1) NachislSumma. Таблица для хранения информации о размерах ежемесячных начислений плат абонентам за оказанные им услуги (которые расшифровываются в справочнике услуг Services). Плата за ремонт газового оборудования производится по факту оказания услуги, и начисление за него не производится. Столбцы таблицы:
    • • NachislFactCD — уникальный идентификатор факта начисления (первичный ключ),
    • • AccountCD — номер лицевого счета абонента, которому было сделано начисление (внешний ключ, ссылающийся на первичный ключ таблицы Abonent),
    • • ServiceCD — код услуги, за которую выполнено начисление (внешний ключ, ссылающийся на первичный ключ таблицы Services),
    • • NachislSum — значение начисленной суммы,
    • • NachislMonth — номер месяца, за который произведено начисление,
    • • NachislYear — год, за месяц которого выполнено начисление;
  • 2) PaySumma. Таблица для хранения значений оплат, внесенных абонентами за оказанные им услуги. Для каждого факта оплаты по какой-либо услуге указывается дата осуществления оплаты, оплачиваемые месяц и год. Столбцы таблицы:
    • • PayFactCD — уникальный идентификатор факта оплаты по услуге Request (первичный ключ),
    • • AccountCD — номер лицевого счета абонента, оплатившего оказанную ему услугу (внешний ключ, ссылающийся на первичный ключ таблицы Abonent),
    • • ServiceCD — код оплаченной услуги (внешний ключ, ссылающийся на первичный ключ таблицы Services),
    • • PaySum — значение оплаченной суммы,
    • • PayDate — дата оплаты,
    • • PayMonth — номер оплачиваемого месяца,
    • • PayYear — оплачиваемый год.

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

  • 3) Request. Таблица для хранения информации о заявках абонентов на ремонт газового оборудования. Каждая ремонтная заявка характеризуется номером лицевого счета абонента (расшифровка в справочнике Abonent), заявившего определенную неисправность газового оборудования (расшифровка в справочнике Disrepair) в его доме или квартире, исполнителем ремонтной работы (справочник Executor), датой регистрации заявки, датой выполнения ремонта и признаком погашения (закрытия). Столбцы таблицы:
    • • RequestCD — уникальный код ремонтной заявки (первичный ключ),
    • • AccountCD — номер лицевого счета абонента, подавшего данную ремонтную заявку (внешний ключ, ссылающийся на первичный ключ таблицы Abonent),
    • • FailureCD — код неисправности газового оборудования, заявленной абонентом в данной ремонтной заявке (внешний ключ, ссылающийся на первичный ключ таблицы Disrepair),
    • • ExecutorCD — код исполнителя, ответственного за выполнение данной ремонтной заявки (внешний ключ, ссылающийся на первичный ключ таблицы Executor),
    • • IncomingDate — дата поступления заявки,
    • • ExecutionDate — дата выполнения заявки,
    • • Executed — столбец логического типа, признак погашения заявки.

В общем случае зарегистрированная ремонтная заявка может быть:

  • • не назначена ни одному из исполнителей, а следовательно, не выполнена и не погашена;
  • • назначена одному из исполнителей, но не выполнена им, а следовательно, не погашена;
  • • назначена одному из исполнителей, выполнена им, но не погашена;
  • • назначена одному из исполнителей, выполнена им и погашена.

ER-модели учебной БД на логическом и физическом уровнях представлены соответственно на рис. 1.4 и 1.5.

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

Объектам учебной БД, согласно стилю программирования, даны вполне осмысленные имена. Это, в свою очередь, привело к необходимости использования довольно длинных имен, что не является недостатком при их задании, так как современные клиентские утилиты производят контекстный поиск при вводе по первым символам имени объекта. Таблицы фактов учебной БД имеют большое число строк. Это сделано для того, чтобы приблизить ее к реальности.

StreetCD

StreetNM

1

ЦИОЛКОВСКОГО УЛИЦА

2

НОВАЯ УЛИЦА

3

ВОЙКОВ ПЕРЕУЛОК

4

ТАТАРСКАЯ УЛИЦА

5

ГАГАРИНА УЛИЦА

6

МОСКОВСКАЯ УЛИЦА

7

КУТУЗОВА УЛИЦА

8

МОСКОВСКОЕ ШОССЕ

Таблица П.2

Данные таблицы Abonent

AccountCD

StreetCD

HouseNo

FlatNo

Fio

Phone

005488

3

4

1

Аксенов С. A.

556893

015527

3

1

65

Конюхов В. С.

761699

080047

8

39

36

Шубина Т. П.

257842

080270

6

35

6

Тимошкина Н. Г.

321002

080613

8

35

11

Лукашина Р. М.

254417

115705

3

1

82

Мищенко Е. В.

769975

126112

4

7

11

Маркова В. П.

683301

136159

7

39

1

Свирина 3. А.

NULL

136160

4

9

15

Шмаков С. В.

NULL

136169

4

7

13

Денисова Е. К.

680305

443069

4

51

55

Стародубцев Е. В.

683014

443690

7

5

1

Тулупова М. И.

214833

Таблица П.З

Данные таблицы Services

ServiceCD

ServiceNM

1

Газоснабжение

2

Электроснабжение

3

Теплоснабжение

4

Водоснабжение

FailureCD

FailureNM

1

Засорилась водогрейная колонка

2

Не горит АГВ

3

Течет из водогрейной колонки

4

Неисправна печная горелка

5

Неисправен газовый счетчик

6

Плохое поступление газа на горелку плиты

7

Туго поворачивается пробка крана плиты

8

При закрытии краника горелка плиты не гаснет

12

Неизвестна

Таблица П.5

Данные таблицы Executor

ExecutorCD

Fio

1

Стародубцев Е. М.

2

Булгаков Т. И.

3

Шубин В. Г.

4

Шлюков М. К.

5

Школьников С. М.

6

Степанов А. В.

Таблица П.б

Данные таблицы NachisISumma

NachislfactCD

AccountCD

ServiceCD

NachislSum

NachislMonth

NachislYear

1

136160

2

56

1

2018

2

005488

2

46

12

2015

3

005488

2

56

4

2018

4

115705

2

40

1

2015

5

115705

2

250

9

2016

6

136160

1

18,3

1

2017

7

080047

2

80

10

2017

8

080047

2

80

10

2016

9

080270

2

46

12

2016

10

080613

2

56

6

2016

NachislfactCD

AccountCD

ServiceCD

NachislSum

NachislMonth

NachislYear

11

115705

2

250

9

2015

12

115705

2

58,7

8

2016

13

136160

2

20

5

2016

15

136169

2

20

5

2016

16

136169

2

58,7

11

2016

17

443069

2

80

9

2016

18

443069

2

38,5

8

2016

19

005488

2

58,7

12

2016

20

015527

1

28,32

7

2017

21

080047

1

19,56

3

2017

22

080613

1

10,6

9

2017

23

443069

1

38,28

12

2017

24

015527

1

38,32

4

2018

25

115705

1

37,15

10

2018

26

080613

1

12,6

8

2015

27

136169

1

25,32

1

2018

28

080270

1

57,1

2

2017

29

136159

1

8,3

8

2018

30

005488

1

62,13

4

2015

31

115705

1

37,8

5

2016

32

443690

1

17,8

6

2017

33

080047

1

22,56

5

2018

34

126112

1

15,3

8

2015

35

080047

1

32,56

9

2016

36

080613

1

12,6

4

2017

37

115705

1

37,15

11

2018

38

080270

1

58,1

12

2015

39

136169

1

28,32

1

2016

40

015527

1

18,32

2

2017

41

443690

1

21,67

3

2018

42

080613

1

22,86

4

2015

43

080270

1

60,1

5

2016

44

136169

1

28,32

2

2017

NachislfactCD

AccountCD

ServiceCD

NachislSum

NachislMonth

NachislYear

45

080047

1

22,2

7

2018

46

126112

1

25,3

8

2016

47

443069

1

38,32

9

2016

48

136159

1

8,3

10

2017

49

115705

1

37,15

6

2018

50

136160

1

18,3

12

2015

51

005488

3

279,8

5

2017

52

005488

3

266,7

2

2018

53

015527

3

343,36

11

2018

54

080047

3

271,6

2

2018

55

080270

3

278,25

11

2018

56

080613

3

254,4

7

2016

57

080613

3

258,8

2

2018

58

080613

3

239,33

5

2018

59

126112

3

179,9

4

2017

60

136159

3

180,13

9

2018

61

136160

3

238,8

3

2015

62

136160

3

237,38

3

2016

63

136169

3

349,19

6

2017

64

136169

3

346,18

7

2017

65

443690

3

290,33

3

2018

66

015527

4

580,1

7

2017

67

015527

4

611,3

10

2018

68

080270

4

444,34

3

2016

69

080270

4

453,43

6

2017

70

080270

4

454,6

4

2018

71

115705

4

553,85

1

2017

72

126112

4

435,5

6

2017

73

136159

4

349,38

4

2016

74

136159

4

418,88

6

2017

75

136169

4

528,44

10

2018

76

443069

4

466,69

5

2017

77

443069

4

444,45

10

2018

78

443690

4

480,88

8

2016

79

443690

4

500,13

9

2017

PayFactCD

AccountCD

ServiceCD

PaySum

PayDate

PayMonth

PayYear

1

005488

2

58,7

08.01.2017

12

2016

2

005488

2

40

06.01.2016

12

2015

3

005488

2

56

06.05.2018

4

2018

4

115705

2

40

10.02.2015

1

2015

5

115705

2

250

03.10.2016

9

2016

6

136160

2

20

13.06.2016

5

2016

7

136160

2

56

12.02.2018

1

2018

8

136169

2

20

22.06.2016

5

2016

9

080047

2

80

26.11.2017

10

2017

10

080047

2

80

21.11.2016

10

2016

11

080270

2

30

03.01.2017

12

2016

12

080613

2

58,5

19.07.2016

6

2016

13

115705

2

250

06.10.2015

9

2015

14

115705

2

58,7

04.09.2016

8

2016

15

136169

2

58,7

01.12.2016

11

2016

16

443069

2

80

03.10.2016

9

2016

17

443069

2

38,5

13.09.2016

8

2016

18

136160

1

18

05.02.2017

1

2017

19

015527

1

30

03.08.2017

7

2017

20

080047

1

19,56

02.04.2017

3

2017

21

080613

1

11

03.10.2017

9

2017

22

443069

1

38,28

04.02.2018

12

2017

23

015527

1

40

07.05.2018

4

2018

24

115705

1

37,15

04.11.2018

10

2018

25

080613

1

12

20.09.2015

8

2015

26

136169

1

25,32

03.02.2018

1

2018

27

080270

1

60

05.03.2017

2

2017

28

136159

1

8,3

10.09.2018

8

2018

29

005488

1

65

03.05.2015

4

2015

30

115705

1

37,8

12.07.2016

5

2016

31

443690

1

20

10.07.2017

6

2017

32

080047

1

22,56

25.06.2018

5

2018

PayFactCD

AccountCD

ServiceCD

PaySum

PayDate

PayMonth

PayYear

33

126112

1

15,3

08.09.2015

8

2015

34

080047

1

32,56

18.10.2016

9

2016

35

080613

1

12,6

22.05.2017

4

2017

36

115705

1

37,15

23.12.2018

11

2018

37

080270

1

58,1

07.01.2016

12

2015

38

136169

1

28,32

08.02.2016

1

2016

39

015527

1

20

18.03.2017

2

2017

40

443690

1

19,47

10.04.2018

3

2018

41

080613

1

22,86

04.05.2015

4

2015

42

080270

1

60

07.06.2016

5

2016

43

136169

1

28,32

05.03.2017

2

2017

44

080047

1

22,2

10.08.2018

7

2018

45

126112

1

25,3

10.09.2016

8

2016

46

443069

1

38,32

09.10.2016

9

2016

47

136159

1

8,3

14.11.2017

10

2017

48

115705

1

37,15

10.08.2018

6

2018

49

136160

1

16

07.01.2016

12

2015

50

005488

3

280

10.06.2017

5

2017

51

005488

3

260

11.03.2018

2

2018

52

015527

3

345

15.12.2018

11

2018

53

080047

3

271,6

12.03.2018

2

2018

54

080270

3

278

06.12.2018

11

2018

55

080613

3

254,4

10.08.2016

7

2016

56

080613

3

258,8

08.03.2018

2

2018

57

080613

3

239,35

11.06.2018

5

2018

58

126112

3

179,9

01.05.2017

4

2017

59

136159

3

180,13

21.10.2018

9

2018

60

136160

3

240

04.04.2015

3

2015

61

136160

3

200

06.04.2016

3

2016

62

136169

3

349,19

14.07.2017

6

2017

63

136169

3

346,18

13.08.2017

7

2017

64

443690

3

295

09.04.2018

3

2018

65

015527

4

580,1

08.08.2017

7

2017

66

015527

4

611,3

03.11.2018

10

2018

PayFactCD

AccountCD

ServiceCD

PaySum

PayDate

PayMonth

PayYear

67

080270

4

444,5

18.04.2016

3

2016

68

080270

4

450

14.07.2017

6

2017

69

080270

4

460

12.05.2018

4

2018

70

115705

4

553,85

02.02.2017

1

2017

71

126112

4

435,5

12.07.2017

6

2017

72

136159

4

349,38

18.05.2016

4

2016

73

136159

4

420

09.07.2017

6

2017

74

136169

4

528,44

26.11.2018

10

2018

75

443069

4

466,69

03.06.2017

5

2017

76

443069

4

444,45

16.11.2018

10

2018

77

443690

4

485

05.09.2016

8

2016

Таблица П.8

Данные таблицы Request

RequestCD

AccountCD

ExecutorCD

FailureCD

IncomingDate

ExecutionDate

Executed

1

005488

1

1

17.12.2016

20.12.2016

True

2

115705

3

1

07.08.2016

12.08.2016

True

3

015527

1

12

28.02.2017

08.03.2017

False

5

080270

4

1

31.12.2016

NULL

False

6

080613

1

6

16.06.2016

24.06.2016

True

7

080047

3

2

20.10.2017

24.10.2017

True

9

136169

2

1

06.11.2016

08.11.2016

True

10

136159

3

12

01.04.2016

03.04.2016

False

11

136160

1

6

12.01.2018

12.01.2018

True

12

443069

5

2

08.08.2016

10.08.2016

True

13

005488

5

8

04.09.2015

05.12.2015

True

14

005488

4

6

04.04.2018

13.04.2018

True

15

115705

4

5

20.09.2015

23.09.2015

True

16

115705

NULL

3

28.12.2016

NULL

False

17

115705

1

5

15.08.2016

06.09.2016

True

18

115705

2

3

28.12.2017

04.01.2018

True

19

080270

4

8

17.12.2016

27.12.2016

True

20

080047

3

2

11.10.2016

11.10.2016

True

21

443069

1

2

13.09.2016

14.09.2016

True

RequestCD

AccountCD

ExecutorCD

FailureCD

IncomingDate

ExecutionDate

Executed

1

005488

1

1

17.12.2016

20.12.2016

True

2

115705

3

1

07.08.2016

12.08.2016

True

3

015527

1

12

28.02.2017

08.03.2017

False

22

136160

1

7

18.05.2016

25.05.2016

True

23

136169

5

7

07.05.2016

08.05.2016

True

 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ   ОРИГИНАЛ     След >