This example shows one simple use LabPP_Automat. It is in the distribution.
Enough to experiment a bit with this example to get an idea about the flexibility and functionality automation.
Text files software scripts allow you to make changes and completely change everything You see.
In the catalog tsprglist You can create a close copy of the directory "Landscape design with price" and give it its own name.
And then immediately begin to create their own automation system on the basis of its own new configuration. To create a button, the programs, ask the panel LabPP_Automat, etc.
Configurations can be any number.

Parsing example.

1. Directory structure and Configuration.
2. Button "Open file Excel".
3. Help button.
4. Export button from ARCHICAD to EXCEL.
5. Import button from EXCEL to ARCHICAD.
6. Find row in EXCEL by selected object in ARCHICAD.
7. Find and select objects in ARCHICAD by current row in EXCEL.


As the basis of the programming language used in LabPP_Automat widely known, simple and flexible C++ language.
The advantages of this language are:
- high speed execution;
- irrigating the readability, conciseness and understandability of the code;
- easy to create and access the functions;
- large library of different procedures.
- its development is much easier and it is more convenient to work.

For convenience, the use of language constructs in LabPP_Automat added string data type.
If You set the MyStringFunc function that returns a string value, it is possible to write so:

string MyString = MyStringFunc();

Here we declare a variable of type "string" MyString immediately recorded in it the value from the function MyStringFunc().


int ac_request() The main function for performing operations with ARCHICAD
string ac_getstrvalue(); Returns the text result of the last query for ARCHICAD
double ac_getnumvalue(); Returns the numeric result of the last query for ARCHICAD

int ac_request(string directive, ... );

Request to ARCHICAD. The Directive represents a code word in accordance with which the query is executed and determines the set of arguments.

get_curr_floor_name   to obtain the name of the current floor in the 2d window ARCHICAD
get_object_property_value   to obtain the value of the variable object
set_object_property_value   to change the value of the variable object
set_layer_visible   controls the visibility of the layer

string alltrim(string source) Trim spaces at the beginning and end of the string
string toupper(string source) Transfer the contents of the string to uppercase
string tolower(string source) Transfer the contents of the string to lowercase
 + Matchmaking strings (concatenation)
 = Assigning the value to a string variable
+= Assigns the value of a variable by adding the line to its current content
string itoa(int value) Translate integer value in string
string сtoa(char value) Translate an integer value into a string in the form of a symbol
string sprintf(string format, double value) Translate floating point number to a string
int strcontains(string source,string substr) If the source string contains the substr returns 1 (otherwise 0)
cout << arg1 << arg2 << ... Display the information in the message box

int excel_select_range(string rangename)

To select a cell or group of cells in the current Excel spreadsheet

int excel_putstrvalue(string svalue) Record into the current table cell Excel a text value
int excel_putnumvalue(string svalue) Record into the current table cell, Excel numeric value
int excel_attach() Attaching to current instance Excel
int excel_detach() Detach Excel
int excel_request(string command,string par1,string par2, srting par3); To execute a command with parameters
string excel_getstrvalue(); Consider the text value of the current cell in Excel
double excel_getnumvalue(); Consider the numeric value of the current cell in Excel