Apache OpenOffice BASIC Programming Guide

From Apache OpenOffice Wiki
< Documentation
Revision as of 14:12, 19 January 2013 by DiGro (Talk | contribs)

Jump to: navigation, search


PDF Icon.gif Download as a PDF or ODT


This guide provides an introduction to programming with Apache OpenOffice Basic. To get the most out of this book, you should be familiar with other programming languages. Extensive examples are provided to help you quickly develop your own Apache OpenOffice Basic programs.


Tip.png Apache OpenOffice offers a complete user interface for developing programs in Basic. It is described in the chapter Apache OpenOffice Basic of the Developer's Guide. Before attempting to write macros you should read First Steps with OpenOffice.org Basic and the pages on OpenOffice.org Basic IDE. Since other pages of the Developer's Guide on Basic are technical details for experienced Basic programmers, you should then read this Basic Programming Guide.


This guide divides information about Apache OpenOffice administration into several chapters. The first three chapters introduce you to Apache OpenOffice Basic:

These chapters provide an overview of Apache OpenOffice Basic and should be read by anyone who intends to write Apache OpenOffice Basic programs. The remaining chapters describe the individual components of the Apache OpenOffice API in more detail and can be read selectively as required:

About Apache OpenOffice Basic

The Apache OpenOffice Basic programming language has been developed especially for Apache OpenOffice and is firmly integrated in the Office package.

As the name suggests, Apache OpenOffice Basic is a programming language from the Basic family. Anyone who has previously worked with other Basic languages — in particular with Visual Basic or Visual Basic for Applications (VBA) from Microsoft — will quickly become accustomed to Apache OpenOffice Basic. Large sections of the basic constructs of Apache OpenOffice Basic are compatible with Visual Basic.

The Apache OpenOffice Basic programming language can be divided into four components:

  • The language of Apache OpenOffice Basic: Defines the elementary linguistic constructs, for example, for variable declarations, loops, and functions.
  • The runtime library: Provides standard functions which have no direct reference to Apache OpenOffice, for example, functions for editing numbers, strings, date values, and files.
  • The Apache OpenOffice API (Application Programming Interface): Permits access to Apache OpenOffice documents and allows these to be created, saved, modified, and printed.
  • The Dialog Editor: Creates personal dialog windows and provides scope for the adding of control elements and event handlers.
Documentation note.png VBA : Compatibility between Apache OpenOffice Basic and VBA relates to the Apache OpenOffice Basic language as well as the runtime library. The Apache OpenOffice API and the Dialog Editor are not compatible with VBA (standardizing these interfaces would have made many of the concepts provided in Apache OpenOffice impossible).


Intended Users of Apache OpenOffice Basic

The scope of application for Apache OpenOffice Basic begins where the standard functions of Apache OpenOffice end. Routine tasks can therefore be automated in Apache OpenOffice Basic, links can be made to other programs — for example to a database server — and complex activities can be performed at the press of a button by using predefined scripts.

Apache OpenOffice Basic offers complete access to all Apache OpenOffice functions, supports all functions, modifies document types, and provides options for creating personal dialog windows.

Use of Apache OpenOffice Basic

Apache OpenOffice Basic can be used by any Apache OpenOffice user without any additional programs or aids. Even in the standard installation, Apache OpenOffice Basic has all the components needed to create its own Basic macros, including:

  • The integrated development environment (IDE) which provides an editor for creating and testing macros.
  • The interpreter, which is needed to run Apache OpenOffice Basic macros.
  • The interfaces to various Apache OpenOffice applications, which allow for direct access to Office documents.

More Information

The components of the Apache OpenOffice API that are discussed in this guide were selected based on their practical benefits for the Apache OpenOffice Basic programmer. In general, only parts of the interfaces are discussed. For a more detailed picture, see the API reference.

The Developer's Guide describes the Apache OpenOffice API in more detail than this guide, but is primarily intended for Java and C++ programmers. Anyone who is already familiar with Apache OpenOffice Basic programming can find additional information in the Developer's Guide on Apache OpenOffice Basic and Apache OpenOffice programming. Advanced programmers may wish to consult Iannz's tutorial.

Programmers who want to work directly with Java or C++ rather than Apache OpenOffice Basic should consult the Apache OpenOffice Developer's Guide instead of this guide. Apache OpenOffice programming with Java or C++ is a considerably more complex process than programming with Apache OpenOffice Basic.


Content on this page is licensed under the Public Documentation License (PDL).
Personal tools