Модул
Съдържание
Индекс 🔎︎

# Access2Base

## Какво е Access2Base?

Access2Base е библиотека от макроси на LibreOffice Basic за разработчици на приложения (лични или за бизнеса) и напреднали потребители. Тя е една от библиотеките в хранилището „Макроси и диалогови прозорци на LibreOffice“.

Цялата функционалност, предлагана от реализираните макроси, е пряко подсказана от Microsoft Access. Макросите могат да се извикват главно от приложението LibreOffice Base, но също и от произволен документ на LibreOffice (Writer, Calc, ...), в който има смисъл обръщението към данни, съхранявани в база от данни.

ППИ на Access2Base е създаден с намерение да бъде по-стегнат, интуитивен и лесен за научаване от стандартния ППИ на UNO (ППИ = приложен програмен интерфейс, англ. API, Application Programming Interface).

Библиотеката е документирана онлайн, на адрес http://www.access2base.com.

## Реализираните макроси включват:

1. опростен и разширяем ППИ за работа с формуляри, диалогови прозорци и контроли, подобен на обектния модел на Microsoft Access,

2. ППИ за достъп до бази от данни с обекти за таблица, заявка, набор от записи и поле,

3. набор от действия със синтаксис, идентичен на съответните им макроси/действия от Microsoft Access,

4. функциите за бази от данни DLookup, DSum и пр.,

5. поддръжка за съкратен запис от типа на Формуляри!моятФормуляр!моятаКонтрола

а освен това

6. унифицирана обработка на грешки и изключения,

7. средства за програмиране на събития във формуляри, диалогови прозорци и контроли и

8. поддръжка както за вградени, така и за самостоятелни формуляри (на Writer).

## Сравнение между Access2Base и VBA в 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