4D v16.3

Instalação e compatibilidade de componentes

Página Inicial

 
4D v16.3
Instalação e compatibilidade de componentes

Instalação e compatibilidade de componentes  


 

Para instalar um componente em una base de dados 4D v11, simplesmente copie o arquivo de estrutura do banco matriz na pasta Components acessível para o banco local. Pode colocar a pasta Components em duas partes:

  • Ao nível da aplicação 4D executável: neste caso, os componentes estão disponíveis para todos os bancos de dados abertos por esta aplicação.
  • Ao mesmo nível que o arquivo de estrutura doa banco: neste caso, os componentes só estão disponíveis neste banco.

Para maior informação, consulte Localização das pastas de PlugIns e Componentes .

4D busca na pasta Components os bancos matrizes do tipo .4db (banco matriz interpretada), .4dc (banco matriz compilada) o .4dbase (banco matriz de tipo pacote, ver o parágrafo “Extensão .4dbase” na página 45). Os outros elementos, em particular os arquivos de dados ou arquivos de estrutura usuário (.4DA), se ignoram. Você pode utilizar alias ou atalhos para as banco matrizes. Isto pode ser muito útil durante a fase de desenvolvimento do componente já que toda modificação efetuada na banco matriz passa imediatamente a todas as bancos locais.

A pasta Components pode conter todo arquivo ou pasta personalizada necessária para o funcionamento do componente (xliff, imagens, etc.). Por outro lado, não pode conter plug-ins ou subpastas Components. Se estes elementos estão presentes, são ignorados por 4D. Os plug-ins utilizados pelos componentes devem ser instalados no banco local ou em 4D.

Um banco local executada em modo interpretado pode utilizar indiferentemente componentes interpretados ou compilados, em modo Unicode ou não. É possível instalar componentes interpretados e compilados na mesma banco local. No entanto, se vários componentes compilados estão presentes, devem ser executados no mesmo modo Unicode.

Um banco local executada no modo compilado não pode utilizar componentes interpretados. Neste caso, só podem ser utilizados componentes compilados. Igualmente, o modo Unicode deve ser o mesmo para as bancos locais e os componentes.

A seguinte tabela resume as possibilidades de uso de componentes:

Componentes interpretadosComponentes compilados
UnicodeNão UnicodeUnicodeNão Unicode
Banco local interpretadoUnicodeXXX (*)X (*)
Não UnicodeXXX (*)X (*)
Banco local compiladoUnicode--X-
Não Unicode---X

(*) Se vários componentes compilados são instalados , devem funcionar no mesmo modo Unicode. 

Notas:

  • Um banco interpretado que contém componentes interpretados pode ser compilado se não se chama métodos do componente interpretado. Do contrário, aparece uma caixa de diálogo de alerta ao tentar lançar a compilação e a operação não será realizada.
  • Por geral, um método interpretado pode chamar um método compilado e não ao contrário, exceto utilizando os comandos EXECUTE METHOD e EXECUTE FORMULA.

Para maior informação sobre intercâmbios entre componentes e bancos locais componentes, consulte Interação entre componentes e bancos de dados locais.

Um componente interpretado desenvolvido sob Mac OS pode ser instalado em um ambiente Windows e vice-versa. Por outro lado, os componentes compilados devem ser executados na mesma plataforma de compilação, a menos que tivessem sido compilados para ambas plataformas.

Os componentes instalados na base servidor se transferem automaticamente às máquinas clientes por meio de  um mecanismo parecido ao dos plug-ins.

Por outro lado, não se recomenda modificar um componente em cliente/servidor já que os câmbios serão armazenados localmente e o componente não será atualizado na máquina servidor.

Os componentes são carregados ao abrir o banco local.

  • Se um componente contém código compilado e código interpretado que não corresponde, é mostrada uma mensagem de erro e o componente não se carrega no banco local.
  • Se faltar um componente ao inicio, o banco local não abre e se gera o erro -10509 (Impossível abrir o banco). Pode verificar a presença de componentes ao abrir um banco utilizando o comando COMPONENT LIST. Se deseja utilizar os bancos locais que funcionem com ou sem certos componentes, pode utilizar o seguinte tipo de código:
     ARRAY TEXT($arrComponents_Txt;0)
     COMPONENT LIST($arrComponents_Txt)
     If(Find in array($arrComponents_Txt;"ComponentA")>0) // O componente A não tem que estar presente
        EXECUTE METHOD("ComponentAMethod")
     End if

Um componente pode executar automaticamente código 4D ao abrir ou fechar a base local, por exemplo para carregar e/ou guardar as preferências ou estados de usuário relacionados com o funcionamento da base local.

A execução do código de inicialização ou de encerramento se realiza por meio do On Host Database Event database method. Para obter mais informação, consulte a descrição deste método base no manual Linguagem de 4D.

Tenha em conta que por razões de segurança, a execução deste método de base deve ser autorizada expressamente na base local para que possa chamar ele. Para isso, deve selecionar a opção Executar o método "On Host Database Event" no Página Segurança das Propriedades da base:


Diferente de outros objetos compartilhados (ver Objetos compartilhados e não compartilhados), os métodos de projeto compartilhados têm uma existência “física” na base e não são criados simplesmente pela execução de código. 

Em conseqüência, um conflito de nome pode ocorrer quando um método de projeto compartilhado do componente tem o mesmo nome que o método de projeto da base local. Neste caso, quando o código é executado no contexto da base local, é o método da base local o que se chama. Isto significa que é possível “ocultar” um método de componente com um método personalizado (por exemplo para obter uma funcionalidade diferente).

Obviamente, quando se executa o código no contexto do componente, é o método do componente o que se chama.

Esta máscara é indicada com uma advertência em caso de compilação da base local.

Nota: Se dois componentes compartilham métodos com o mesmo nome, é gerado um erro no momento da compilação do banco local.

 
PROPRIEDADES 

Produto: 4D
Tema: Desenvolver e instalar componentes 4D

 
HISTÓRIA 

 
ARTICLE USAGE

Manual de Desenho 4D ( 4D v16)
Manual de Desenho 4D ( 4D v16.1)
Manual de Desenho 4D ( 4D v16.3)