Delphi. Иерархические данные. DBTreeView своими руками. Запоминание свернутости

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

12

Поле Integer, по правильному конечно нужно boolean, которое на самом деле TinyInt(1) в MySQL))

Создал соответствующий FDQuery

13

В коде реализация получилась следующая

2 пишущие процедуры в модуле DMDB

В главном модуле встают соответственно на обработку

и

Чтение “свернутости” из базы соответственно таким путем

Вспомогательная процедура поиска узла в дереве по ключу