Расширение - добавление советов и рекомендаций по полученной статистике, думаю, тут еще поле не паханное. На мой взгляд, именно эта особенность отличает Вашу программу от других "сборщиков статистики".
эээ... ну, доп.советы-то есть, только вот ... лучше я объясню, как это все работает.
Значит, получаем файл статистики (или из servapi). Закидываем в массив, выводим в гриде. По разным формулам (know-how) выдаем всякие предупреждения, раскраски и т.п.
При выводе рекомендаций - анализируем все еще раз, и выводим уже в другой форме, с описанием чего где и как.
В этот момент я не могу формировать "статью по улучшению конкретной БД". То есть, в хелпе вшито 2 статьи и Q&A, которые объясняют ВООБЩЕ что где и как, чего с этим делать и куда бежать. То есть, просмотр рекомендаций - это оценка рекомендаций на основе ПРОЧИТАННОЙ ДОПОЛНИТЕЛЬНОЙ информации.
Если я буду эту доп информацию каждый раз вставлять в "рекомендации" - это будет ... в общем, забадывать это будет, потому что постоянно будет один и тот же текст. Поэтому, в рекомендациях и хинтах написано (вроде как), куда смотреть для более детальной расшифровки информации.
И, я опущу момент, что все-таки это "робот", который автоматизированно никак не может увидеть определенные проблемы, которые легко обнаруживает support. И, разумеется, я никогда не дам в публичное использование инструмент, который позволит самому последнему тупице "автоматизированно" консультировать всех и вся, извините. Слава богу, такая автоматизация все равно невозможна.
Да, кстате, не могу его найти, в архиве программы его не было, на F1 ничего не работает.
ну е-мое... это архив ОБНОВЛЕНИЯ. написано же. я ж не буду на каждый чих обновлять дистр. Выпускаем update, проходит некоторое время, и обновляется дистрибутив.
2KDV Дим, может перед выводом съёма статистики (аналог gstat -a -r) делать Application.ProcessMessages, а то иногда белое пятно посреди экрана
Код: Выделить всё
while not DM.IBStatService.Eof do
if fIsCancelled then
Exit
else
begin
Application.ProcessMessages;
StatsMemo.Lines.Add(DM.IBStatService.GetNextLine);
end;
В текстовый файл можно эту информацию "засовывать". Боюсь ошибиться, но кроме rdb$indices можно использовать для этого и db$relation_constraints (т.е. не искать FK в имени, а просто выкинуть системные).
опять двадцать пять. если статистика получена ИЗ ФАЙЛА, то там нет этой информации и уже нечего никуда засовывать. Если статистика принимается через Services API, то да, версия 1.82 уже может обратиться после этого к БД за информацией к системным таблицам.
И да - планируется при сохранении такой информации рядом с текстовым файлом статистики (стандартным) класть еще и спец-файл с метаданными, для последующей полноценной работы с этим файлом.
Ферштейн?