I understand you perfectly. What I advised allows you to run instructions created by other programs.
You cannot run DBPRO code using DBPRO syntax from another program; at best you can
use LUA, which I advised above. To call DBPRO functions from scripts, you use the DBPro.Call LUA function.
Quote: "DBPro.Call
This command allows you to call any dbpro command from within your scripts (of dlls you registered, or were registered by lua make 1, or user functions you registered).
Remember however to include the dbpro dlls you want to use from your scripts by having a command from that dbpro dll within (or at the end of) your dbpro source code.
The first parameter is the name of the dbpro command you would like to call. The command name is without spaces and the leading characters are upper "
Or if you want to stick to one language, do something similar to the following:
Matrix1 + XML
Call Function Name XML GET ELEMENT NAME(xElement)
How to read / generate XML:
XML OPEN DOCUMENT "test.xml", 1
XML GET ROOT ELEMENT 1, 1
XML GET CHILD ELEMENT 1, 2
PRINT XML GET TEXT 2
XML GET NEXT ELEMENT 2, "Child_b", 2
PRINT XML GET TEXT 2
XML GET NEXT ELEMENT 2, 2
PRINT XML GET TEXT 2
XML CLOSE DOCUMENT 1XML OPEN DOCUMENT "test.xml", 1
XML INSERT DECLARATION 1, "1.0", "UTF-8", "yes"
XML SET ELEMENTS ABSOLUT 1, "root/folder1/folder2", 2
XML SET ELEMENTS RELATIVE 2, "folder3"
XML GET PARENT ELEMENT 2, 2
XML SET ELEMENTS RELATIVE 2, "folder3"
XML GET PARENT ELEMENT 2, 2
XML SET ELEMENTS RELATIVE 2, "folder3"
XML GET PARENT ELEMENT 2, 2
XML INSERT COMMENT 2, "This Element has three Childs with the same Name."
XML SET ELEMENT TEXT 2, "This element contains text. ;)"
XML DUPLICATE ELEMENT 2, 2
XML DUPLICATE ELEMENT 2, 2
XML SAVE DOCUMENT 1
XML RELEASE ELEMENT 1
XML RELEASE ELEMENT 2
XML CLOSE DOCUMENT 1
XML OPEN DOCUMENT "test.xml", 1
XML LOAD DOCUMENT 1
XML GET ROOT ELEMENT 1, 1
XML GET ELEMENT 1, "folder1/folder2", 2
PRINT "Rootelement: "+XML GET ELEMENT NAME (1)
PRINT "Element: "+XML GET ELEMENT NAME (2)
PRINT " Numbers of Childs: " + str$(XML COUNT CHILDS (2))
PRINT " Childlist:"
XML GET CHILD ELEMENT 2, 3
WHILE XML IS VALID ELEMENT (3)
PRINT " >" + XML GET ELEMENT TYPE (3) + "< " + XML GET ELEMENT NAME (3)
XML GET NEXT ELEMENT 3, 3
ENDWHILE
XML RELEASE ELEMENT 1
XML RELEASE ELEMENT 2
XML RELEASE ELEMENT 3
XML CLOSE DOCUMENT 1
WAIT KEY
Matrix1 + INI
Call Function Name Lookup$( INI, "Item/Action", "DefaultAction" )
Quote: "MAKE LOOKUP FROM INI
Syntax
MAKE LOOKUP FROM INI Lookup id, Ini filename$
Description
This command can be used to build a lookup table from an Ini file.
The section name will be combined with a slash and the key to generate a key for the lookup.
If there is a blank section name, the loaded key will have a leading slash. If the ini key is blank, the key will have a trailing slash.
The hash ( # ) and semi-colon ( ; ) characters are treated as the start of a comment, unless they are enclosed within a double-quoted value.
When a field starts with a double-quote, everything up to the last double-quote on the line will be retained, but everything after will be discarded as if it were a comment."
Or old school approach, somewhat slower:
Select ACTION$
Case "YourAction" : YourFunction() : EndCase
EndSelect
Or
Select Memblock String$( Memblock, Pos, Length )[/b]
Case "YourAction" : YourFunction() : EndCase[/b]
EndSelect
Or
Select XML GET ELEMENT NAME( Memblock, Pos, Length )
Case "YourAction" : YourFunction() : EndCase
EndSelect
Or use commandlines and mutexes if you want two DBPRO programs to run side by side. If you want to learn commandlines and mutexes, there are examples in the forum.