Access2Base
¿Qué es Access2Base?
Access2Base es una biblioteca de macros de LibreOffice Basic para desarrolladores de aplicaciones (de negocios o personales) y usuarios avanzados. Es una de las bibliotecas almacenadas en «Macros y diálogos de LibreOffice».
Las funcionalidades provistas por las macros implementadas fueron modeladas sobre Microsoft Access. Las macros no solo están disponibles en LibreOffice Base, sino también en cualquier documento de LibreOffice (Writer, Calc…) donde tenga sentido acceder a datos almacenados en una base.
La API de Access2Base está diseñada para ser más concisa, intuitiva y fácil de aprender que la API estándar de UNO (API = interfaz de programación de aplicaciones, por sus siglas en inglés).
La biblioteca está documentada en el sitio web www.access2base.com.
Entre las macros implementadas se incluyen:
-
una API simplificada y extensible para la manipulación de formularios, cuadros de diálogo y controles similar al modelo de objetos de Microsoft Access,
-
una API para el acceso a bases de datos con tablas, filtros, conjuntos de registros y campos,
-
diversas acciones con una sintaxis idéntica a la de las macros y acciones de Microsoft Access correspondientes,
-
las funciones de base de datos DLookup, DSum, etc.,
-
la compatibilidad con notaciones cortas como Forms!myForm!myControl
asimismo
-
un manipulador coherente de errores y excepciones
-
funciones para programar sucesos para formularios, cuadros de diálogo y controles, y
-
compatibilidad con formularios incrustados e independientes (Writer).
Comparación entre Access2Base y VBA de Microsoft Access
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