Utilização do FileMaker Pro ActiveX Automation (Windows)
A Biblioteca de tipos do FileMaker Pro
A Biblioteca de tipos descreve os objetos, propriedades e métodos expostos pelo FileMaker Pro para que outros clientes ActiveX possam acessar o FileMaker Pro.
A Biblioteca de tipos do FileMaker Pro está incluída no executável do FileMaker Pro. Ela não é um arquivo separado. A Biblioteca de tipos do FileMaker Pro foi registrada no seu computador durante a instalação do FileMaker Pro.
No Visual Basic, adicione "Biblioteca de tipos do FileMaker Pro" à lista de Referências disponíveis no seu projeto.
Importante  Você deve adicionar a Biblioteca de tipos do FileMaker Pro à lista de bibliotecas de tipos disponíveis no aplicativo que usará para implementar o documento ActiveX Automation. Se não adicionar a biblioteca de tipos, você não poderá trabalhar com o FileMaker Pro por ActiveX Automation.
O método para adicionar essa biblioteca varia entre as diferentes ferramentas de criação de ActiveX Automation. Consulte o manual enviado com a sua ferramenta de criação de ActiveX Automation, se souber fazer isso. O procedimento adiante explica como fazer isso no Microsoft Visual Basic:
Para adicionar a Biblioteca de tipos do FileMaker Pro ao Microsoft Visual Basic:
1.
No Microsoft Visual Basic, escolha o menu Project (Projeto) > References (Referências) > Add Type Library (Adicionar Biblioteca de Tipos).
2.
Marque a caixa de seleção à esquerda da Biblioteca de tipos do FileMaker Pro.
3.
FMPro70Lib aparece no Pesquisador de objetos do Visual Basic assim que as referências do projeto incluírem a Biblioteca de tipos do FileMaker Pro. Todos os objetos, métodos e propriedades que o FileMaker Pro expõe para o controle de automação estão disponíveis agora.
Como declarar o FileMaker Pro como um objeto Application
Declare o FileMaker Pro como um objeto Application (de aplicação) toda vez que criar um aplicativo ou script ActiveX Automation para controlar o FileMaker Pro. Isso pode ser feito com uma única linha de código no início do seu documento de automação, onde ele aparece com as suas outras definições.
Por exemplo:
Dim FMProApp As FMPro70Lib.Application
Como obter um objeto Application
Para fazer qualquer chamada de automação para o FileMaker, você deve primeiro obter acesso ao objeto Application (de aplicação) FileMaker. Há duas formas de fazer isso: chamando CreateObject ou GetObject.
Para usar qualquer um dois dois chamados, primeiro declare o objeto Application:
Dim FMProApp as FMPro70Lib.Application
Somente para CreateObject:
Set FMProApp = CreateObject("FMPRO.Application")
CreateObject iniciará o FileMaker, se ele ainda não estiver em execução.
A função GetObject busca um objeto Application apenas se o FileMaker já estiver em execução.
Somente para GetObject:
Set FMProApp = GetObject(, "FMPRO.Application")
Observe a vírgula, que indica que o primeiro argumento de GetObject, um caminho para um arquivo do disco, foi omitido. A vírgula é necessária, porque, em algumas circunstâncias, GetObject coloca um nome de arquivo como seu primeiro argumento. Para buscar uma instância do FileMaker, entretanto, você deve omitir o argumento de nome de arquivo, ou ocorrerá um erro.
Como chamar um script do FileMaker Pro
Para executar um script do FileMaker Pro por ActiveX Automation, chame a função DoFMScript com o mesmo nome do script como a variável.
Por exemplo:
Dim FMProApp as FMPro70Lib.Application
CreateObject("FMPRO.application")
Dim FMProDocs, FMProDocs.Open("c:\MyFile.fmp12","","")
Dim FMProDoc
FMProDoc.DoFMScript ("MyScript")
Set FMProDoc = nothing
Como alternar a visibilidade do aplicativo FileMaker Pro
Quando o FileMaker Pro é iniciado por automação, ele é executado oculto por padrão. Você pode usar a propriedade de visibilidade para ocultar ou mostrar o FileMaker Pro.
Por exemplo, para ocultar o aplicativo:
FMProApp.Visible = False
Para mostrar o aplicativo:
FMProApp.Visible = True
Contagens de referências e liberação de objeto
Quando um objeto de automação é referido, uma contagem de referências é incrementada para indicar ao FileMaker que um processo está usando esse objeto. No Visual Basic, um objeto é contado como referência sempre que você define a variável declarada para um objeto do FileMaker, por exemplo:
' apenas uma declaração - ainda não tem referências
Dim FMDocs as FMPro70Lib.Documents
' esta linha causa uma referência do objeto "Documents" do FileMaker
Set FMDocs = FMApp.Documents
' esta linha causa uma segunda referência do objeto "Documents" do FileMaker
Set FMDocs2 = FMApp.Documents
O FileMaker não pode ser fechado até todas as contagens de referência serem liberadas. No Visual Basic, você pode liberar a contagem de referências definindo a variável de objeto como "Nothing", por exemplo:
' libera a referência ao objeto "Documents" do FileMaker
Set FMDocs = Nothing
' libera a segunda referência ao objeto "Documents" do FileMaker
Set FMDocs2 = Nothing
' libera a referência ao objeto Application do FileMaker
Set FMApp = Nothing
É uma boa prática sempre definir variáveis de objeto como "Nothing" quando você terminar de usar as variáveis.
Privilégios de acesso
O FileMaker Pro usa o método Documents.Open(filename As String, accountName As String, password As String). Se os argumentos accountName e password forem cadeias de caracteres vazias, o arquivo será aberto como um usuário cliente.
Scripts
Os scripts do FileMaker Pro chamados diretamente por automação podem interromper uns aos outros.
Os scripts do FileMaker Pro chamados de dentro de outros scripts do FileMaker Pro serão executados em ordem, conforme esperado.
Arquivos hospedados remotamente
Não é possível abrir um arquivo hospedado usando o ActiveX Automation sozinho. Para abrir um arquivo hospedado usando automação, você pode abrir o arquivo hospedado diretamente usando a caixa de diálogo Abrir do FileMaker e depois acessando o arquivo usando a automação ou você pode criar um script do FileMaker Pro que abra o arquivo hospedado e depois chamar esse script por meio da automação.
Tópicos relacionados 
Utilização do FileMaker Pro ActiveX Automation (Windows)
Exemplo de ActiveX Automation (Windows)