в TPrintDBGridEh есть AfterGridText и BeforeGridText. В данных объектах есть возможность работы с макросами через procedure SetSubstitutes(ASubstitutes: array of const); она работает через function TPrintDBGridEh.GridTextReplace в ней проблема она не ищет макрос с кирилицей (к примеру %[Проект]) это исправляется: ваш код: Result := rest.FRichEdit.FindText(SearchStr, StartPos, Length, Options); мой код: Result := rest.FRichEdit.FindText(WideString(SearchStr), StartPos, Length, Options);
2. работать через SetSubstitutes не удобно, не могли бы вы переложить function TPrintDBGridEh.GridTextReplace из private в public тогда можно будет вызывать GridTextReplace без предварительно формирования громадного массива макросов и их значений
|