1

Этап 1

Перенести имеющиеся данные по физ.лицам

2

Этап 2

Курим закон

3

Этап 3

Накатать список конкретных задач, решаемых при помощи данной БД

4

Этап 4

Продумать ЕR-модель данных и структурировать информацию соответствующим образом.

5

Этап 5

Навести порядок

6

Этап 6

ОТМЕНЕНО Свистелки и перделки: добавить сканы документов

7

Этап 7

Блэкджек и шлюхи (средствами SQL)

8

Этап 8

ОТМЕНЕНО Свистелки и перделки: добавить .doc, .xls, .pdf, .etc документы

9

Этап 9

ОТМЕНЕНО Доступ к БД по сети.

10

Этап 10

Блэкджек и шлюхи (средствами ЯВУ)

1

Этап 1

Перенести имеющиеся данные по физ.лицам

2

Этап 2

Курим закон

3

Этап 3

Накатать список конкретных задач, решаемых при помощи данной БД

4

Этап 4

Продумать ЕR-модель данных и структурировать информацию соответствующим образом.

5

Этап 5

Навести порядок

6

Этап 6

ОТМЕНЕНО Свистелки и перделки: добавить сканы документов

7

Этап 7

Блэкджек и шлюхи (средствами SQL)

8

Этап 8

ОТМЕНЕНО Свистелки и перделки: добавить .doc, .xls, .pdf, .etc документы

9

Этап 9

ОТМЕНЕНО Доступ к БД по сети.

10

Этап 10

Блэкджек и шлюхи (средствами ЯВУ)

25 июля 2015 30 июня 2016
Цель завершена 9 августа 2016

Автор цели

Карьера и работа

Запилить преферанс и куртизанок в своей БД.

Первым делом прошу прощения у программистов за то, что эту цель поместил в группу "Программирование", она с ним очень слабо связана. М.б. разве что косвенно по части написания запросов на SQL. Просто остальные группы из категории "Работа и карьера" подходят для неё ещё меньше.

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

Я работаю инженером в сфере предоставления коммунальных услуг. Непосредственно в отделе сбыта и в метрологической службе. Пожалуй, самая важная часть работы заключается в сборе/хранении/обработке данных, полученных при помощи приборов учёта потребления коммунального ресурса а также договорных данных. Всю совокупность потребителей коммунального ресурса можно, условно, разделить на две категории: физические и юридические лица. Работа с первой категорией в основном регулируется ПП РФ от 06.05.2011 №354. Работа со второй категорией регулируется... Да в общем-то ничем, кроме договоров, которые в целом не должны противоречить ГК РФ и требованиям всяких там надзорных органов. Отсюда вытекает, что при работе с этими двумя категориями есть некоторая отличающаяся специфика.

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

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

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

 Критерий завершения

В течение длительного времени (месяц, например) не используются операторы определения данных (CREATE, ALTER, DROP), используются только операторы манипуляции данными (SELECT, INSERT, UPDATE, DELETE). Это будет показатель того, что стуктура БД годна и я перестал постоянно всё там перепиливать, сама БД используется для стабильной работы.

 Личные ресурсы

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

 Экологичность цели

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

  1. Перенести имеющиеся данные по физ.лицам

    контрагенты, договоры, адреса, объекты;

    данные по узлам учета;

    данные по взаиморасчётам.

    1. добавить адреса, объекты, контрагентов, договоры

    2. добавить данные по узлам учёта

    3. добавить данные по взаиморасчётам

  2. Курим закон

    Для учёта нюансов.

    1. ПП РФ №354 по вопросам учёта потребления, начислений, взаиморасчётов.

    2. Последние изменения по сабжу с 2016.

  3. Накатать список конкретных задач, решаемых при помощи данной БД

    - БД представляет подробный реестр: объекты на которые предоставляются услуги, узлы учёта и показания, тарифы, договоры с контрагентами (объекты, сроки, объемы), расчёты за услуги.

    - автоматический расчёт начислений по показаниям узлов учёта, по средним значениям (при отсутствии данных) и по расчётным нагрузкам (при отсутствии узлов учёта);

    - автоматический расчёт состояния расчётов за услуги, данные по выпискам банка вводятся автоматизированно;

  4. Продумать ЕR-модель данных и структурировать информацию соответствующим образом.

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

    1. Реализовать схему данных

    2. Причесать данные

  5. Навести порядок

    годный_алгоритм(корректные_исходные_данные) = корректные_выходные_данные

    Чтоб был получен правильный результат, надо исправить ошибки и неточности, связанные с тем, что в момент создания БД, данные не были нормализованы.

    Есть список потребителей (196 шт, 8 на букву "А", 18 на букву "Б" и т.д...), есть список, каким должен быть результат работы алгоритма. Ищем ошибки в договорных данных, данных по расходомерам, данным по оплатам и т.д., исправляем. Ну это как 196 уравнений решить, только хуже. Поехали...

    1. А - 9 / 9

    2. Б - 15 / 17

    3. В - 5 / 5

    4. Г - 6 / 6

    5. Д - 8 / 9

    6. Е - 3 / 4

    7. Ж - 5 / 5

    8. З - 5 / 5

    9. И - 5 / 7

    10. К - 22 / 23

    11. Л - 8 / 8

    12. М - 7 / 9

    13. Н - 7 / 7

    14. О - 3 / 3

    15. П - 11 / 11

    16. Р - 7 / 7

    17. С - 25 / 26

    18. Т - 7 / 7

    19. У - 4 / 4

    20. Ф - 1 / 2

    21. Х - 4 / 5

    22. Ц - 1 / 1

    23. Ч - 1 / 1

    24. Ш - 9 / 9

    25. Э - 3 / 4

    26. Ю - 1 / 1

  6. ОТМЕНЕНО Свистелки и перделки: добавить сканы документов

    Это вообще что-то нереальное по объёму... Но стоило бы.

    1. бумаги по УУХВС: акты допуска / снятия

    2. бумаги по УУХВС: акты снятия показаний (какие есть) 2011

    3. бумаги по УУХВС: акты снятия показаний (какие есть) 2012

    4. бумаги по УУХВС: акты снятия показаний (какие есть) 2013

    5. бумаги по УУХВС: акты снятия показаний (какие есть) 2014

    6. бумаги по УУХВС: акты снятия показаний (какие есть) 2015

    7. бумаги по УУТС: отчёты 2011

    8. бумаги по УУТС: отчёты 2012

    9. бумаги по УУТС: отчёты 2013

    10. бумаги по УУТС: отчёты 2014

    11. бумаги по УУТС: отчёты 2015

  7. Блэкджек и шлюхи (средствами SQL)

    Несмотря на, условно, незатейливость SQL, многое можно на самом SQL

    1. Расчёт начислений как результат хитрого SELECTа

    2. Расчёт сальдо как результат нехитрого SELECTа

    3. ОТМЕНЕНО Расёт пеней как результат очень хитрого SELECTа

  8. ОТМЕНЕНО Свистелки и перделки: добавить .doc, .xls, .pdf, .etc документы

    Чтоб то, что кое-как храниться в файловой системе (ну те же рыбы договоров, например), лежало в БД с конкретной привязкой к контрагентам.

  9. ОТМЕНЕНО Доступ к БД по сети.

    Вообще ХЗ как это делают те, кто в это умеет. Тут сильно курить матчасть.

  10. Блэкджек и шлюхи (средствами ЯВУ)

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

    1. Импорт данных из банковских выписок

    2. txt для печати квитков на оплату

  • 5874
  • 25 июля 2015, 13:48

Вывод

383день
leleg10 авг. 2016, 11:08

Ну как бы да, полномочия всё, окончены.

По основному критерию - окончательно определиться со схемой БД, запилено уже как несколько месяцев назад.

Далее пару месяцев было ПОТРАЧЕНО на запиливание кучи запросов, которые выполняют нужные расчёты. Ещё некоторое время было ПОТРАЧЕНО на запиливание на С++ пары консольных приложений, которые делают всякое неприличное с csv-файлами, которые экспорт результатов запросов к данной БД.

От одной штуковины - заливать туда и хранить сканы докментов, в ходе процесса решил отказаться по нескольким причинам. 1. Не захотелось неоправданно тратить на это кучу времени. Быстро найти какую-то бумажку - задача, как оказалось, возникающая не столь часто. Ограничился предположением, что время, которое будет ПОТРАЧЕНО на сканирование и залив всего этого вороха в БД будет много больше, чем совокупное (за всё время эксплуатации этой БД в данном виде) время поиска бумажек по папкам в шкафу. 2. Замечено, что чем больше в БДшку MS Access залито таких вот OLE, тем нестабильнее ведёт себя программуля. Если же этого добра нет вовсе, то футболка сухая и совсем не пахнет. 3. Без этого добра база компактная и её бэкапы легко и непринуждённо заливаются в какое-нить облако. И уходя с работки, не нужно ждать, пока закачаются несколько ГБ, прежде чем вырубить свой многострадальные ПК.

Чему я научился в ходе этой вакханалии? Обмазался в базовый SQL.

Дальше я планирую запилить базу (с такой же структурой) на SQLite и перетащить туда данные. И запилить на С++ приложение, которое будет к ней подключаться и делать всякое неприличное уже не с какими-то там текстовыми файлами, а непосредственно с самой БД. Но про это уже будет следующая цель "преферанс и куртизанки 2.0". Ну вроде бы всё сказал.

Дневник цели

Комментарии

Натали11.08.2016

Вопрос. А откуда взялась эта фраза "преферанс и куртизанки"? В последнее время часто на нее натыкаюсь, а Яндекс мне ответов не дает :)

leleg11.08.2016

Натали, всё просто. :) Это одна из вариаций перевода (на "гусарскай манеръ") фразы персонажа-робота по имени Bender из знаменитого мультсериала Futurama, ставшей крылатой на просторах интернетов. https://www.youtube.com/watch?v=BGi6Q1pNbS0

Чаще произносится так: "Я сделаю сво(й/ю/ё) собственн(ый/ую/ое) <что-то>. С блэкджеком и шлюхами!" Означает: «Ну и ладно! Я сделаю себе аналог круче, чем оригинал».

... Эх, вот закрыли людям на Роисси доступ к "Луркмоар", и неоткуда теперь ликбез по мемчикам черпать :(

355день

Запись к этапу «Блэкджек и шлюхи (средствами ЯВУ)»

leleg13 июля 2016, 13:48

Промежуточные итоги

Овер 3 месяца пользуюсь полученной моделью данных.

Запилил автоматизированную подготовку платёжных документов для потребителей посредством программки, написанной мной на С++. Такие дела.

Оставшиеся задачи

Запилить автоматизированный ввод в базу данных информации по платежам из банковской выписки. Так же буду пилить на С++ и используя подобный подход.

Загрузить 1 комментарий
leleg15.07.2016

someGuy, у меня всё как обычно: спонсор показа картинок - гугл :)

Выдано по запросу "Dennis Ritchie about your mom"

322день
leleg10 июня 2016, 07:14

Изменения по цели.

От свистелок и перделок в виде документов (сканов бумаг в pdf и всяких doc, xls), хранящихся в БД в нынешней её реализации, решил отказаться по нескольким весомым причинам:

- Много заливать. Мало того, что на это нет времени, дык ещё это и не особо нужно. Прежде всего нужны цифры и оперативный доступ к ним. Если нужны бумаги -> го в шкаф с папками.

- Сильно раздувает БД по объёму. Делать бэкапы становится совсем не весело. Хранить всё это тоже особо негде.

- Плохо влияет на стабильность работы.

От доступа по сети тоже решил пока отказаться. По крайней мере, в этой "детской" реализации. Когда будет серьёзный продукт (задумка есть), тогда и поколдуем.

От блэкджека и шлюх в виде расчёта пеней как результата хитрого селекта тоже отказался. Не стоит сейчас такая задача... Мотивы руководства скорее всего политические.

Промежуточные итоги.

Овер 2 месяца пользуюсь полученной моделью данных. Теперь нет избыточности данных. В этом смысле меня абсолютно устраивает. Вычислительные штуки-дрюки реализованы при помощи SQL. Работает медленно (самый хытрый запрос около 40 сек.). Это не устраивает. Зато работает правильно. Это очень устраивает. В целом, мы стали более лучше одеваться стало удобнее работать.

Оставшиеся задачи.

Уже сейчас падлит в полуручном режиме готовить документы на оплату. А в связи с последними тенденциями в законодательстве (я про переход взаиморасчётов потребителей напрямую с РСО) может резко возрасти число прямых потребителей. Тогда эту задачу станет невозможно выполнять руками. Тоже самое с вводом информации по платежам.

То есть оставшиеся задачи - реализовать блэкджек и шлюхи средствами ЯВУ.

304день

Запись к этапу «Навести порядок»

leleg23 мая 2016, 10:24

Разгрёб...

277день

Запись к этапу «Блэкджек и шлюхи (средствами SQL)»

leleg26 апр. 2016, 08:03

По сути, через .csv вытащил из базы нужные таблички в новую, чистенькую. Налячал там запросов.

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

Запилил нужные селекты. На овер 800 строк общей сложностью. В базе хранятся: реестр потребителей, реестр объектов, реестр договоров, показания расходомеров, договорные нагрузки, табличка тарифов -> из всего этого селекты вычисляют расход ресурса, суммы начислений. Вроде бы всё просто, но много тонкостей и толстостей. Ну там тарифы разные в разные периоды, расходомеры двух типов используются, одни вводы могут быть подключены через другие и ещё там что-то. Ещё в базе хранятся данные по оплатам -> из этого и всего предыдущего вычисляется состояние взаиморасчётов в разные периоды времени. Ну, как бы всё теперь взаимосвязано между собой. Красота.

Следующим шажком будет запилить небольшую программулю для выписок из банка, чтоб не руками заливать. И ещё программулю, которая будет запиливать документы на оплату aka "счёт-квитанция".

Насчёт расчёта пеней пока хз... Если руководство возьмёт на вооружение эту меру воздействия на неплательщиков, тогда и посмотрим, а пока... Хотя как это реализовать, алгоритм в голове уже давно прикинул.

Всякие документы (мс офис, жпг, пдф и всякое такое) решил вынести в отдельную базу и подключаться к ней из этой. Так как оно сильно раздувает по объёму базу, но заливается оно не часто, а вот бэкап делаю ежедневно.

238день

Запись к этапу «Накатать список конкретных задач, решаемых при помощи данной БД»

leleg18 мар. 2016, 12:42

Был накатан список конкретных задач. Этот этап можно закрыть. Условно 3 пункта. Первое - то, без чего базы нет. Второе - полезное, нужное. Третье - свистелки и перделки.

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

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

В принципе, запилив это, для сносной работы с этой локальной базой будет за глаза.

237день

Запись к этапу «Курим закон»

leleg17 мар. 2016, 12:28

На одном из объектов сменился арендатор, надо было налячкать договор. В связи с чем решил, что как раз Валера настало твоё время ознакомиться с последними изменениями в законодательстве, касательно некоторой части моей работы.

Тем самым закрыл здесь пункт 2.

222день
leleg2 мар. 2016, 00:46

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

leleg02.03.2016

222 get!

188день

Запись к этапу «ОТМЕНЕНО Свистелки и перделки: добавить сканы документов»

leleg28 янв. 2016, 20:00

Залил в БД кучу pdf. Акты по узлам за 2015 и 2014.

Добавил детали начислений для 4000+ к записей. А всего их сейчас 5000+

Вы тоже можете
опубликовать свою
цель здесь

Мы поможем вам ее достичь!

310 000

единомышленников

инструменты

для увлекательного достижения

Присоединиться
Регистрация

Регистрация

Уже зарегистрированы?
Быстрая регистрация через соцсети
Вход на сайт

Входите.
Открыто.

Еще не зарегистрированы?
 
Войти через соцсети
Забыли пароль?
Alex
Champion
Николай Зубков