Delphi. Omnithreads. ProgressBar with ForEach

Example with progress Bar on ForEach abstraction.


Posted in Delphi | Leave a comment

MySQL. Triggers don’t fire on Cascade Delete

This is fact.
No workaround possible with MySQL Syntax.
Only on client.
The end.

Posted in MySQL | Leave a comment

Delphi.Omnithreads.Future – hunting the value in backGroundThread

Future is good  thread abstraction that hunts for the value in background thread.  We can ask backGround thread what is value now.

Calling VCL from backGround is bad idea in that case.  For that pupose see

Below is example of Future Abstraction From demos…


Posted in Delphi | Leave a comment

Delphi. OmniThreads.Async – most simple example

hi, most simple example of OmniThread lib looks like

GUI is responsive during executing the code…


Posted in Delphi | Leave a comment

Delphi. UniGUI. Emulation of Pages using Frames

UniGUI is SPA – single page application, but, emulation is possible.

One option – use frames.

Then call its in main like this



Posted in Delphi | Leave a comment

RTTI Atributes

shows how to work with RTTI and attributes

RTTI – Run Time Type Library – is approach that helps to manage code when program is running.

Lets say we have code from someOne without docs. RTTI will help to find methods, invoke them,  get / set properties, fields, work with attributes (some meta-information to classes)

defining attributes as derivative from TCustomAttribute

assigning attributes to elements of class

reading attributes



Posted in Delphi | Leave a comment

C#. Undirected Graph Basics Altogether



Continue reading

Posted in C# | Leave a comment

Delphi IDE Colorizer – did you know about?

Yesterday opened for myself Delphi IDE Colorizer (DIC). Cool thing – see attachment pic !!!

It has dozens of themes, transparent menu, with Delphi Theme Editor together you can customize IDE as you wish. And it is free.

I downloaded it from Installer on github

github Source.

Also you will need to customize code area…

Delphi theme editor

Delphi theme editor installer

Posted in Delphi | Leave a comment

MySQL. Cравнение даты (datetime) через оператор BETWEEN


Оператор BETWEEN идеально подходит для сравнения диапазона между датами (datetime). Но тут есть подводные камни. Например, есть задача — выбрать данные из таблицы за некоторый промежуток времени (с ‘2008-08-14’ по ‘2008-08-23’).

1. Выполняя любые сравнения, приводить все данные к одному типу.
2. Если один операнд имеет значение типа TIMESTAMP или DATETIME, а другой является константой, операнды сравниваются как значения типа TIMESTAMP. А это значит, что если была строка в виде ‘2008-08-14’, то она автоматически преобразуется в TIMESTAMP ‘2008-08-14 00:00:00’ и это влияет на результат запроса.
3. Над данными, которые участвуют в условиях сравнения желательно не делать никаких операций — это позволяет для них использовать индексы, иначе они игнорируются.

Получаем самый лучший запрос:


Posted in MySQL | Leave a comment

Delphi. UniGUI. Synchronious and ASynchronious modes

about ShowModal in VCL and not only

Posted in Delphi | Leave a comment