Съдържание

# Основи

Този раздел съдържа основна информация за работата с LibreOffice Basic.

Кодът на LibreOffice Basic е базиран на подпрограми и функции, които се задават като раздели от типа sub...end sub и function...end function. Всяка подпрограма и функция може да се обръща към други подпрограми и функции. Ако се погрижите кодът на подпрограмата или функцията да не е зависим от контекста, вероятно ще можете да я използвате в други програми. Вижте също Процедури и функции.

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

## Какво е подпрограма (Sub)?

Sub е съкращение от subroutine (подпрограма) – откъс код, който служи за решаване на определена задача в програма. Подпрограмите служат за разделяне на задача на отделни процедури. Разделянето на програмата на процедури и подпроцедури подобрява четливостта й и намалява възможностите за грешка. Подпрограмата може да приема аргументи като параметри, но не връща стойност на извикващата я подпрограма или функция, например:

НаправиНещоСъсСтойностите(ПърваСтойност, ВтораСтойност)

## Какво е функция (Function)?

Функцията представлява подпрограма, която връща стойност. Можете да я използвате от дясната страна при обявяване на променлива или на други места, където обикновено използвате стойности, например:

ВтораСтойност = МояФункция(Първа стойност)

## Глобални и локални променливи

Глобалните променливи важат във всички подпрограми и функции в даден модул. Те се обявяват в началото на модула, преди началото на първата подпрограма или функция.

Променливите, обявени в подпрограма или функция, важат само в съответната подпрограма или функция. Те имат предимство пред глобалните променливи със същите имена и локалните променливи със същите имена от по-външни подпрограми или функции.

## Структуриране

След като разделите програмата си на процедури и функции (блокове Sub и Function), можете да ги запишете за повторно използване в други проекти. LibreOffice Basic поддържа модули и библиотеки. Процедурите и функциите винаги са част от модул. Можете да дефинирате модулите като глобални или като части от документ. Една библиотека може да съдържа няколко модула.

Можете да копирате и местите процедури, функции, модули и библиотеки от един файл в друг чрез диалоговия прозорец Макрос.