Boa tarde Mônica!

Não sei bem com resolver o seu problema, até porque a única implementação de 
OpenOffice e Delphi que fiz foi uma integração entre o OOCalc e o Delphi, mas 
vou procurar alguma coisa. 

Se eu achar eu posso até postar aqui.

A respeito da tradução Basic / Pascal eu acredito que tudo esteja ok, mas só 
por via das dúvidas, qual é o tipo da variável vProp (Basic) / Prop (Pascal)? 
Por acaso ela é um Variant?

Abraço,
Ricardo.

monicadachary <[EMAIL PROTECTED]> escreveu:                                  
Olá pessoal,
 
 Meu nome é Mônica e sou nova aqui no grupo.
 
 Estou com um problema e gostaria de saber se alguém aqui que já tenha 
 trabalhado c/ integração Delphi/OpenOffice poderia me ajudar.
 
 Estou tentando portar um código em Basic relativo à alteração e 
 aplicação de marcadores/numeração em um documento do OpenOffice. 
 Porém eu recebo a mensagem 'com.sun.star.uno.RuntimeException' nesta 
 linha: Numeracao.replaceByIndex(i, Prop);
 
 A baixo segue o código em Basic e a minha tentativa de tradução p/ o 
 Delphi:
 
 BASIC 
 ------
 oNumeracao = oDoc.createInstance("com.sun.star.text.NumberingRules") 
 For i = 0 To 2 
     vProp = oNumeracao.getByIndex(i)
     For j = 0 To UBound(vProp()) 
         If vProp(j).Name = "NumberingType" Then 
             vProp(j).Value = 
 com.sun.star.style.NumberingType.CHARS_LOWER_LETTER 
             oNumeracao.replaceByIndex(i, vProp()) 
         End If 
     Next j 
 Next i 
 Cursor.setPropertyValue("NumberingRules", oNumeracao) 
 
 DELPHI
 -------
 Numeracao := Document.createInstance 
 ('com.sun.star.text.NumberingRules'); 
 for i := 0 to 2 do 
 begin 
     Prop := Numeracao.getByIndex(i); 
     for j := 0 to VarArrayHighBound(Prop, 1) do 
     begin 
         if Prop[j].Name = 'NumberingType' then 
         begin 
             Prop[j].Value := 1; //CHARS_LOWER_LETTER 
             Numeracao.replaceByIndex(i, Prop); 
         end; 
     end; 
 end; 
 Cursor.setPropertyValue('NumberingRules', Numeracao); 
 
 Ao que me parece não está sendo possível executar o comando 
 replaceByIndex.
 
 Procurei nas mensagens do Forum sobre API no OpenOffice.org mas não 
 encontrei maiores explicações.
 
 Por favor, se alguém souber o que há de errado me ajude.
 
 Obrigada,
 Mônica
 
 
     
                       

                
---------------------------------
 Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. 
Registre seu aparelho agora!

[As partes desta mensagem que não continham texto foram removidas]

Responder a