Innehåll
Index 🔎︎

# Access2Base

## Vad är Access2Base?

Access2Base är ett LibreOffice Basic makrobibliotek för programutvecklare (kommersiellt eller privat) samt avancerade användare. Det är ett av biblioteken som lagras under "LibreOffice makron och dialoger".

Funktionerna som tillhandahålls av de implementerade makrona är alla direkt inspirerade av Microsoft Access. Makrona kan anropas huvudsakligen från ett LibreOffice Base-program, men också från något LibreOffice-dokument (Writer, Calc, ...) där tillgång till data lagrad i en databas är meningsfull.

Det API som Access2Base ger är tänkt att vara kortfattat, intuitivt och enklare att lära sig än det normala UNO API (API = Application Programming Interface).

Biblioteket finns dokumenterat online på http://www.access2base.com.

## De makron som är implementerade inkluderar:

1. ett förenklat och utvidgningsbart API för formulär, dialoger och kontroll manipuleringar liknande Microsoft Access objektmodellen,

2. ett API för databasåtkomst med tabell, fråga, post och fält objekt,

3. ett antal åtgärder med en syntax identisk med motsvarande Microsoft Access makron/åtgärder,

4. DLookup, DSum, ... databasfunktionerna,

5. stöd för kortkommandon som Forms!myForm!myControl

dessutom

6. en konsekvent fel- och undantagshantering,

7. hjälpmedel för att programmera formulär, dialoger och kontroll händelser och

8. stöd för både inbäddade formulär och fristående (Writer) formulär.

## Jämför Access2Base med 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