BrOffice

Revisão de 19h06min de 14 de maio de 2010 por GVerzeletti (discussão | contribs)

CALC - Vínculos em Arquivos Compartilhados (Linux e Windows)

CALC - Vínculos - Preparando ambiente

Objetivo:

    Fornecer informações técnicas de implementação e utilização do recurso de vínculo, disponível no calc, para
documentos que serão acessados por diversos usuários em rede através dos sistemas operacionais linux e windows.


Considerações iniciais:

- A função de vínculos do CALC funciona perfeitamente quando a edição ocorre somente em uma estação da rede.
  
- Quando é necessário o acesso em rede ao documento matriz, alguns padrões precisam ser seguidos para que não
ocorra a quebra de vínculos.

- A função DDE não funciona entre os ambientes linux e windows, devido a forma como cada um trata esta função.


Implementação:

  • 1) Colocar todos os documentos (matriz e vínculos) em um diretório de rede, preferencialmente no servidor de arquivos.

  • 2) Nas estações windows mapear esta pasta de rede na unidade "V:".

BrOffice-vinculo-01.PNG

  • 3) Nas estações linux criar um diretório "V:" com permissão 777 no diretório raiz (/).

  • 4) Ainda nas estações linux acrescentar no arquivo "/etc/security/pam_mount.conf.xml" as informações para montar a pasta de rede no diretório "/V:"

  • 5) Configurar os vinculos no BrOffice da seguinte forma:
  - Abra o documento matriz, escolha a célula que receberá o vinculo e clique em = (igual)
  - Abra o documento que será usado para fornecer os valores, selecione a célula com o valor e pressione ENTER.


  • 6) Para atualizar os vinculos automaticamente, uma alternativa é criar uma macro:

Acesse o menu Ferramentas -> Macros -> Organizar Macros -> BrOffice.org Basic...
BrOffice-vinculo-02.PNG


Digite "Reler" como nome da macro, e clique em "Novo"
BrOffice-vinculo-03.PNG


Na tela de edição da macro:
BrOffice-vinculo-04.PNG


Adicione o código da macro conforme o sistema operacional:

Windows:

sub Reler
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:Save", "", 0, Array())

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:Reload", "", 0, Array())


end sub



Linux:

sub Reler
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:Save", "", 0, Array())

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:Reload", "", 0, Array())

rem ----------------------------------------------------------------------
rem dispatcher.executeDispatch(document, ".uno:UpdateTableLinks", "", 0, Array())


end sub