Access2Base

O que é o Access2Base?

Access2Base é uma biblioteca de macros do LibreOffice BASIC destinada a programadores de aplicações (empresariais ou pessoais) e a utilizadores avançados. É uma das bibliotecas incluídas na secção «Macros e caixas de diálogo de aplicações».

As funcionalidades oferecidas pelas macros implementadas são todas diretamente inspiradas no Microsoft Access. As macros podem ser executadas principalmente a partir de uma aplicação LibreOffice Base, mas também a partir de qualquer documento LibreOffice (Writer, Calc, ...) em que faça sentido aceder aos dados armazenados numa base de dados.

Pretende-se que a API disponibilizada pelo Access2Base seja incisiva, intuitiva e mais fácil de utilizar do que a API UNO (API = Application Programming Interface).

Ícone de aviso

A biblioteca está devidamente documentada em http://www.access2base.com.


As macros implementadas incluem:

  1. uma API simplificada e extensível para manipulação de formulários, caixas de diálogo e controlos, tal como o modelo de objetos do Microsoft Access,

  2. uma API para acesso a bases de dados com objetos de tabelas, consultas, registos e campos,

  3. diversas ações que utilizam uma sintaxe idêntica às ações/macros do Microsoft Access,

  4. as funções DLookup, DSum,

  5. o suporte a notações de atalhos como, por exemplo, Forms!myForm!myControl

adicionalmente

  1. um gestor de erros e exceções,

  2. facilidades para criar formulários, caixas de diálogo, controlo de eventos e

  3. o suporte a formulários incorporados ou individuais (Writer).

Comparação entre o Access2Base e Microsoft Access VBA


   REM Open a form ... 
             OpenForm("myForm") 
   REM Move a form to new left-top coordinates ... 
             Dim ofForm As Object  ' In VBA =>  Dim ofForm As Form 
             Set ofForm = Forms("myForm") 
             ofForm.Move(100, 200) 
   REM Get the value of a control ... 
             Dim ocControl As Object 
             ocControl = ofForm.Controls("myControl") 
             MsgBox ocControl.Value 
   REM Hide a control ... 
             ocControl.Visible = False 
   REM ... or alternatively ... 
             setValue("Forms!myForm!myControl.Visible", False)  '  Shortcut notation 
             ' In VBA =>  Forms!myForm!myControl.Visible = False