2010-09-06 2 views
0

Я использую Delphi 2010 и Rave Reports (встроен, v.7.7.0).Delphi 2010 - проблема с изменением текста во время выполнения Rave

Я использую эту пару в течение 5 месяцев без каких-либо проблем. В моей компании я использую два языка, сначала я использую наш основной язык (турецкий), и когда люди хотят использовать другой язык, я изменяю конкретные текстовые и памятные значения в соответствии с их значением тега.

Этот подход работал до последней недели. На прошлой неделе изменения значений во время выполнения перестали работать. Я не знаю, почему, все выглядит нормально с кодом, я также пытался проверить измененные значения, значения, казалось, изменились, но когда я выполняю отчеты, все значения меняли свои значения по умолчанию.

Вот мой код для изменения:

procedure ProcessRaveReport(APageName : string); // 'rp411.rp411Page' 
var 
    myPage : TRavePage; 
    myText : TRaveText; 
    i, iTag : Integer; 
begin 

    dm.Rave.Open; 
    with dm.Rave.ProjMan do 
    begin 
    myPage := FindRaveComponent(APageName,nil) as TRavePage; 
    if myPage = nil then Exit; 
    for i:= 0 to myPage.ComponentCount-1 do 
    begin 
     if myPage.Components[i] is TComponent then 
     iTag := (myPage.Components[i] as TComponent).Tag; 

     if (iTag > 0) then 
     begin   
     if myPage.Components[i] is TRaveText then 
     begin 
      //ShowMessage((myPage.Components[i] as TRaveText).Text); 
      //ShowMessage(getLangIDS((myPage.Components[i] as TRaveText).Tag)); 
      (myPage.Components[i] as TRaveText).Text := getLangIDS((myPage.Components[i] as TRaveText).Tag); 
      //ShowMessage('Sonuc : '+(myPage.Components[i] as TRaveText).Text); 
     end 
     else if myPage.Components[i] is TRaveMemo then 
      (myPage.Components[i] as TRaveMemo).Text := getLangIDS((myPage.Components[i] as TRaveMemo).Tag); 
     end; 
     //iTag := 0; 
    end; 
    end; 
    dm.Rave.Close; 
end; 

Вы можете увидеть мои ShowMessage вызовов, это сообщение доказать, что значение меняется на новый язык, но в конце концов я всегда вижу значение по умолчанию.

Есть ли какие-либо решения этой проблемы?

Denizhan

ответ

0

Я скучаю по .Execute из RvProject-компонента «Rave» ... на быстро проверить это выглядит хорошо, но вы только изменить экземпляр RvProject и не сам файл.

+0

Да, вы правы. Я изменил текст, но после изменения закройте этот экземпляр. Я удалил «dm.Rave.Close», и он работал над экземпляром среды выполнения. Благодарим вас за то, что вы напомнили об этом. – dseckin

Смежные вопросы