PDA

View Full Version : CommitCRM SQL


adent-ctc
February 14th, 2018, 10:24 PM
Hi

If we convert our CommitCRM to SQL Database are we able to connect directly into the SQL database engine to run our own queries, bypassing the need for the API?

Kind regards

Andrew

Support Team
February 14th, 2018, 11:02 PM
Thank you for asking. Yes, you will connect directly over standard ODBC to the database and will be able to use standard SQL statements to query the data.

Hope this helps.

adent-ctc
February 14th, 2018, 11:17 PM
Is there another method instead of using ODBC?
I'm concerned that we can only have select statements with ODBC.
Initially being limited to select statements is ok, but longer term we want to be able to insert, update and delete.
I want to make sure before we spend the money on a license for "SQL Database for CommitCRM"
It looks like the "SQL Database for CommitCRM" is a Sybase Database engine, therefore we would like to programmatically connect to this Sybase Database engine.

The programming language we are using is Perl in linux, which has a DBD:Sybase module.
But I'm sure there are other modules for Perl or for other languages as well.
I'm not locked into using Perl....

I'd prefer to not use the CommitCRM Programming API as we have tried and it is hard to use.
We spent sometime trying to use Python, and getting the embedded query XML just right is more time consuming than we expected.

Ideally would love to see a better API developed.
Something like the Webroot API would be perfect.
https://unityapi.webrootcloudav.com/Docs/en/APIDoc
But understand providing a new API is no doubt a large effort.

Kind regards

Andrew

Support Team
February 15th, 2018, 12:20 AM
Inserts and updates should only be performed using the API. This is because each "simple" insert or update may involve affect many many tables that might not be that obvious to detect, and - even if you find how it works 'now' it may be changed in the future breaking your custom system. The API is guaranteed to know all the internal logic, constraints and keep the database integrity as required. We do not plan support SQL inserts or updates. So, simply query the database using SQL, or the API, and send the insert/update transactions over the API. Hopefully this makes sense. Thanks for your other suggestions.

adent-ctc
February 15th, 2018, 01:30 AM
Yes I understand that the API is guaranteed to know all the internal logic. But it is so tedious/complex to get right for even the most simple of tasks and the examples are limited.
I need to balance the effort of reverse engineering the database schema and logic with the engineering effort to learn to use the API.

Maybe I'll try the C# method of using the API.
This URL talks about CommitCRM-CSharp-2010.sln


Can you please tell me where I can find CommitCRM-CSharp-2017.sln, or any earlier version?
If CommitCRM-CSharp-2010.sln is the latest, where do I find it, and will that solution work in Visual Studio 2017?

Yes, the Webroot API is awesome.
We use Perl to make use of the Webroot API, but any language that can to make a GET request can likely do the job.

Support Team
February 15th, 2018, 01:45 AM
Please drop us an email and we'll share the API libraries download link with you.