In a nutshell there are a couple of ways to get data out of equinox, dependant on which version it is. Which is normally obtained by pressing CTRL+F1 when in the application.
Generally it is up to the developer who created your application to create either the data export or to write an esp (like asp) page that will export data when called. ODBC is a sticky point with Equinox as other modern databases have no concept of the way in which equinox deals with its data and Compsoft decided not to create the interface initially.
With modern versions of equinox it is possible to mirror the data in MSSQL and ORACLE databases and get at it that way.
But once again this will need setting up by the application developer.
If the application developer is not availabale there are a few Equinox programmers out there (not many now, we are a dying breed) who may be able to help, but there is great loyalty between developers not to tread on each others toes.
If you are completely stuck, look thorugh the help files if it is equinox 4.1+ and pay attention to the section on "Catalogs", it is in theory possible to find out all you need about the schema of the database, then create esp pages to retrieve data. You will need to look at the rest of theprogramming language to work out how to navigate the tables.
Because equinox does not work anything like sql you will have to use what is almost a database navigation syntax, but don't scoff it is one of the fastest (if not least flexible) ways to organise and retrieve data.
It is strict in its methods, but extremely logical and you are almost instructing the database engine what to do directly, it would be akin to the logical steps that a sql database will turn your traditional statement into, before it executes it.
Hello I use Equinox and come across this problem regularly with clients IT. We found the mirroring to be too inflexible for our specific needs so I was asked to write an ODBC module to push and read data from a SQL database. This allowed us to write only specific data that was required rather than mirror the whole database. However, the ODBC connection is controlled entirely on the Equinox end. It's just not possible to connect to Equinox using third party software. Indeed, this is a major selling point for Equinox when data security is paramount.
I'll give you a brief explanation of how but you will need someone with some experience in Equinox Method language scripting to get this up and running.
I was able to do this using the Windows odbc32.dll. Using Equinox's 'Add External Object' feature you can add the DLL's published calls to your code library. A sample of the code once generated looks like this..
Public External "odbc32.dll" SQLConnect ulong, ReadOnly ptr stringz, short, ReadOnly ptr stringz, short, ReadOnly ptr stringz, short returns short | Connects to database
Public External "odbc32.dll" SQLFreeConnect ulong returns short | Releases connection handle
Public External "odbc32.dll" SQLDisconnect ulong returns short | Disconnects from database
Once you have this you can create you standard Equinox Procedures to Connect, Disconnect, Write records, Edit Records, Read Records etc.
Here is an example of how to connect to the SQL database...
| connect to globally defined odbc database dsn (defined in control panel on all pcs calling this)
PUBLIC PROCEDURE CONNECT_ODBC LOGICAL L_ERR, MEMO M_ERR
Stringz sDSN, sUser, sPassword
L_ERR = FALSE
sDSN = PWCOdbcDSN | up to 32 chars
sUser = PWCOdbcUsr | up to 128 chars, 32 in pw
sPassword = PWCOdbcPass
This is probably moving into the slightly more advanced areas of method language within the Equinox development environment. Equinox is fantastic in quickly designing and creating software and has a very gentle and intuitive learning curve. However, I find it becomes quite restrictive in some areas and requires major work around's to perform relatively basic tasks. Such as this example.
If just getting the data out the Equinox database into SQL, Oracle, MySQL is the goal then Equinox's in build Export facility is probably easier. Then just import the generated file using software you understand into the other database.
Last edited by AdamBright; 09-16-10 at 07:49.
Reason: further info