Já havia tentado, e tentei novamente agora. Se um parametro String
funcionasse, o metodo toString do StringBuffer funcionaria tb... =(


Calendar horaLocal = Calendar.getInstance();
String newNome = "Tabela de Preços " + horaLocal.get(Calendar.DAY_OF_MONTH)
+ "_" + horaLocal.get(Calendar.MONTH )
+ "_" + horaLocal.get(Calendar.YEAR ) + "_" + horaLocal.get(
Calendar.HOUR_OF_DAY ) + "h " + horaLocal.get(Calendar.HOUR_OF_DAY )
+ "m " + horaLocal.get(Calendar.SECOND ) + "s";

ele dá a seguinte mensagem de erro ao executar o script:

" Ocorreu uma exceção durante a execução do beanshell de script
precos.bshna linha: 110.

Tipo: com.sun.star.uno.RuntimeException

Mensagem: : Method Invocation xSheets.insertNewByName "

A linha 110 do referido script:

if(!xSheets.hasByName(newNome  )  ) xSheets.insertNewByName( newNome ,
(short)0 );

Na documentação da API do OOo, o método insertNewByName

 *insertNewByName*( [in] string  aName,  [in] short  nPosition );
que tipo de parâmetro  é esse, string com "S" minúsculo? Um "Typo" da
documentação?


P.S.: lendo os emails que chegam, eu percebi que essa lista trata do
desenvolvimento do BrOo... =)  Mas eu não consigo ver o erro no meu código,
os "JavaMan" daqui do escritório não conseguem ver erro no meu código. O que
ocorre é que o MÉTODO não está aceitando nada que não seja um parâmetro.

Em 01/11/06, Noelson Duarte <[EMAIL PROTECTED]> escreveu:

Olá Denis,

Você já tentou usar um objeto String ?

String sNome = "Tabela de preços " + .... + ... + ....;

t+

PS: parece que esta lista trata sobre dev *do* BrOo.


----- Original Message -----
From: "Denis Camargo" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Wednesday, November 01, 2006 9:56 AM
Subject: [dev] XSpreadsheets.insertNewByName() não aceita parametros.


Eu estou desenvolvendo uma macro para a organização em que trabalho, e eu
preciso criar uma folha na planilha com nome dinâmicamente alocado.

Nomes de planilhas do Calc sté onde eu pude perceber só podem conter
espaços, caracteres alfanuméricos e underlines.

O nome da planilha tem que incluir a data e o horario de criação. Eu vou
incluir os trechos de código aqui:


// cria o nome da planilha. Observe que, se eu manualmente inserir o
string
criado abaixo no Calc, o OOo não dá erro.
Calendar horaLocal = Calendar.getInstance();
sheetName = new StringBuffer("Tabela de Preços ");
sheetName.append(horaLocal.get(Calendar.DAY_OF_MONTH ));
sheetName.append("_");
sheetName.append(horaLocal.get(Calendar.MONTH ));
sheetName.append("_");
sheetName.append(horaLocal.get(Calendar.YEAR ));
sheetName.append(" ");
sheetName.append(horaLocal.get(Calendar.HOUR_OF_DAY ));
sheetName.append("h ");
sheetName.append(horaLocal.get(Calendar.MINUTE ));
sheetName.append("m ");
sheetName.append(horaLocal.get(Calendar.SECOND ));
sheetName.append("s");


// cria a nova planilha, com a referencia para acessá-la.
if(!xSheets.hasByName(sheetName.toString()  )  ) xSheets.insertNewByName(
sheetName.toString() , (short)0 );
Object sheet = xSheets.getByName(sheetName.toString() );
XSpreadsheet xSpreadsheet = (XSpreadsheet)UnoRuntime.queryInterface(
XSpreadsheet.class, sheet);



O runtime do OOo dá erro quando ele tenta invocar o método insertNewByName
com os parâmetros dados.

xSheets.insertNewByName( sheetName.toString() , (short)0 );

se eu colocar no lugar de sheetName.toString() um string estático, um
stringbuffer menor, dá o mesmo erro.
o único modo de fazer o trecho acima rodar encontrado foi colocar

xSheets.insertNewByName( "Tabela de Precos" , (short)0 ); , o que é
insatisfatório por não conter a data e hora de criação.

Alguma ajuda?




----------------------------------------------------------------------------
----


No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.1.408 / Virus Database: 268.13.17/505 - Release Date:
27/10/2006

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Responder a