Contenido
Índice 🔎︎

# Access2Base

## ¿Qué es Access2Base?

Access2Base es una biblioteca LibreOffice BASIC de macros para desarrolladores de aplicaciones (empresariales o personales) y usuarios avanzados. Es una de las bibliotecas almacenadas en «Diálogos y macros de la aplicación».

Todas las funcionalidades que brindan las macros facilitadas se inspiran directamente en Microsoft Access. Es posible invocar las macros desde la aplicación LibreOffice Base, principalmente, pero también se puede hacerlo desde cualquier documento de LibreOffice (de Writer, Calc, etc.) en el que tenga sentido acceder a datos almacenados en una base de datos.

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 disponibles se incluyen:

1. 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,

2. una API para el acceso a bases de datos con tablas, filtros, conjuntos de registros y campos,

3. diversas acciones con una sintaxis idéntica a la de las macros y acciones de Microsoft Access correspondientes,

4. las funciones de base de datos DLookup, DSum, etc.,

5. la compatibilidad con notaciones cortas como Forms!myForm!myControl

asimismo

6. un manipulador coherente de errores y excepciones

7. funciones para programar eventos para formularios, cuadros de diálogo y controles, y

8. 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