Olá Denis !

Numa *macro* java o método funciona:

        // ---------------------------------
        short number = 100;
        String aName = "Planilha " + number;
        try {
            xSheets.insertNewByName(aName, (short) 0);
        }
        catch (Exception ex) {  }

        // ---------------------------------

parece que você têm algum problema nas conversões do objeto Calendar para
String.

Como não sou um "JavaMan", não posso te ajudar neste ponto (talvez com o
objeto DateFormat ?).

Sobre o <string> com s minúsculo, ele se refere a um tipo de dado UNO. O
Dev's Guide recomenda no tópico 3.4.1 que, para a linguagem Java, o mesmo
deve ser mapeado para <java.lang.String>.

t+

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


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]
>
>



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


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