А Б В Г Д Е Ё Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Завершение работы над планировщиком запросов

 

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

0 + 0 -

Начало работы над планировщиком запросов

 

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

0 + 0 -

Реализация создания и настройки баз данных

 

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

0 + 0 -

Работа над механизмом создания и открытия проектов

 

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

0 + 0 -

Начало работы над диалоговым окном создания баз данных

 

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

0 + 0 -

Завершение работы над представлением таблицы (!!!)

 

Наконец-то!! Свершилось!! Огромная эпопея с работой над контролом для отображения и редактирования таблиц сегодня завершилась!! Уж точно больше двух месяцев ушло на эту работу. Мог ли я представить, что так долго провожусь с этими представлениями таблиц, до того как я начал это делать? Конечно нет! Куда там! Несколько месяцев назад я вообще думал, что управлюсь с этим за пару недель. Но куда там! Всегда умножай предполагаемый срок работы над чем-либо на два а то и три. Ну вот, сегодня я и достиг финала работы с представлениями таблиц. Закончил диалоговое окно (тоже, наконец-то!) для создания PDF-отчетов. Там я допилил парсинг HTML-шаблонов и сделал отправку этих самых сгенерированных отчетов на email. Так что вот так. Дела идут, прогресс наблюдаем, заветное завершение работы над программой неумолимо близиться. И сегодня я поставил точку в большой главе своей работы...

0 + 0 -

Продолжение работы над окном создания PDF-отчетов

 

Ну вот, вопреки всем своим ожиданием я ещё НЕ ЗАКОНЧИЛ работу над этим окно. Что-то производительность работы оставляет желать лучшего. Ни вчера не смог закончить, ни сегодня. Но сегодня у меня просто нет времени работать. Так что вот так. Но генерацию самих PDF-файлов я сегодня уже реализовал, там всё закончено. И таблицы выводятся и диаграммы встраиваются в файлы PDF. Но вот только есть один неприятный нюанс. Расширение библиотеки для создания PDF - QuestPDF для конвертации HTML разметки оказалось до обидного скудным, не функциональным. Там невозможно даже задать форматирование текста. Невозможно использовать стили CSS. И много чего ещё не имеется. Короче дешевая (то есть бесплатная) ерунда. А что тут нужно было хотеть. За бесплатно редко мощь бывает. Есть и другие решения для генерации PDF из HTML, одно из них я вчера даже испробовал - качество разительно отличается от этой бесплатной дешевки. НО. Это расширение стоит денег. И не малых. Демка генерит PDF-файлы с водяными знаками, требующими покупки этого ПО, которое стоит нехилых $ 700 (от $ 700)... 

0 + 0 -

Работа над диалоговым окном отчетов продолжается и забытая функция представления таблицы

 

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

0 + 0 -

Начало работы над созданием PDF-отчетов

 

Ну вот наконец-то я до неё добрался. До последней функции контрола для отображения данных из таблиц. Долго же я к этому шел, много недель. И вот оно почти уже свершилось. Ну да ладно. А дела обстоят так, что я сегодня только начал делать диалоговое окно для создания PDF-отчетов. Разумеется, ещё его не закончил. Потому что за день это не реально сделать. Будет как минимум два дня. А вполне возможно, что и три. В этой версии проекта делаю всё по-новому, с нуля. Копипаст из прошлой версии проекта даже смысла нет делать. Потому что тут практически всё будет по другому. Так-то. 

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

0 + 0 -

Завершение работы над импортом данных

 

Предыдущие дни были совершенно непродуктивными. Жизнь ставит палки в колёсах. Но всё же наконец-то я допилил этот импорт данных. Не без труда. А день сегодня был достаточно длинным и трудным. теперь всё готово, чтобы импортировать данные разных форматов. Допилил реализацию кода, взяв наработки из прошлого проекта. Однако оттуда простым копипастом уже ничего не перенесешь. Всё нужно менять и адаптировать под новую версию проекта, где буквально всё сильно отличается от того, что я делал более года назад. Так что вот так. Ну и плюс к тому добавил импорт формата данных из объекта JSON, чего в своём прошлом проекте ещё не делал...

0 + 0 -
  • Яндекс.Метрика