Заполнение шаблона в Microsoft Word с артефактами
я формирую отчет в из Delphi (вставляю в существующий шаблон Microsoft Word данные из базы (т.е. заменяю параметры в шаблоне на значения из базы)), вот кусок кода
var
TypeDos_Templs: variant;
... TypeDos_Templs.Selection.Find.Forward := True;
TypeDos_Templs.Selection.Find.Wrap := wdFindContinue;
TypeDos_Templs.Selection.Find.Format := true;
TypeDos_Templs.Selection := TEXT_STYLE(TypeDos_Templs.Selection, AUnderLine, ABold, AItalic);
TypeDos_Templs.Selection.Find.Replacement.Font.Color := AColor;....
и функция которая задаёт стиль текста
function TEXT_STYLE(ASource: Variant;
AUnderLine, ABold, AItalic: integer): Variant;
begin
if AUnderLine = 1 then
ASource.Find.Replacement.Font.Underline := true
else ASource.Find.Replacement.Font.Underline := false;
if ABold = 1 then
ASource.Find.Replacement.Font.Bold := true
else ASource.Find.Replacement.Font.Bold := false;
if AItalic = 1 then
ASource.Find.Replacement.Font.Italic := true
else ASource.Find.Replacement.Font.Italic := false;
Result := ASource;
end;
раньше, когда функции "TEXT_STYLE" не было, а ее код был вместо ее вызова, и отчёт формировался отлично.
Но когда я сделал эту функцию "TEXT_STYLE", отчёт тоже формируется, НО в нем стали появляться дополнительные символы (например символ "перевода каретки на другую строку"), количеством равным числу подставляемых значений из базы.
В чем может быть причина?
Вот интересно, а если обращаться к функции просто:
TEXT_STYLE(TypeDos_Templs.Selection, AUnderLine, ABold, AItalic);
То всё работает отлично