Version system // source code management

Hi, does anyone know a tool for source code management and version loging for Navision (including check-in / check-out and so on)… Thx Chris

Yes we have. It work on sql server only. What we did was create a table “called check out” in navision that has object type,object ID,“Check out Person User ID”. Then on SQL server we wrote a trigger on the OBJECT table on modify, insert, delete to write to that new table. If “Check out Person User ID” is different than who ever is modifying the record, we issue an error (‘somebody else has checked out this object’). So the person needs to delete the record to check back in.

I wouldn’t call that a source code management / version logging tool though. That is basically meant for multi-developer databases so that one developer isn’t working on the same objects as another developer at the same time. It is a very nice tool that can really save some double work, but it does not log any history, nor does it keep any history of objects. As soon as you ‘check in’ an object, the object is just released for the next person to use.

Yes, I agree with Daniel, that isn’t the system I am searching for… but it could be the first step. From my point of view the system should do the following… If a developer opens an object (form, report, table, etc) in design modus the system must check if this object is opened by an other developer first. If yes, the developer should get a warning message which names the other editing developer. If not the developer could open the object. If he want to save and compile it, the system should save the old version before (perhaps with an simple export of this object to a networt-folder, including Version number and a timestamp). After that the version list in the object designer should be updatet automatically. Any other ideas or implemented solutions?? Chris


Any other ideas or implemented solutions??
Originally posted by Chris-Acon - 2005 Mar 19 : 16:32:44

There is a tool available. Michael Weigand just supplied it in 2000 as a light version and for a very few Euros as a registered version for multiple users. We are still using it. I was not able to find his current website. However, it can be found here:

I wrote a tool that intergrates with Source Safe. Every time you open an object (native & SQL) will trigger a checkout window (either if you open it in object designer or ctrl+f2). When you close an object it will trigger an checkin window. You can work on it even over the internet so your developers can work on the office/at home or at the customer on the same project at the same time and always are able to download the most recent object. the system checks if the developer has the most recent object when opening an object. The system locks an object when somebody is modifying it. It also has an task system in it, you can select a task when you start developing and every change will be logged in a table with that task so you can easally filter out which object is changed for which task. Also adding documentation is automated by using shortcut keys. However we are still in testing phase (and will be for some time as we are too busy. The biggest problem might be the huge amount of workload the server gets when everyone is using it. But this is never tested. We also don’t know if we are going to make this available to the public. Regards, Jan-Pieter

Oh, this seems to be the right tool. Perhaps I could participate testing??

hello thanks for the offer. But i think it is a little to complicated to test externally. And then the only test it needs is a stress test and we must try and do 1 project with multiple developers and consulant (doint form and report changes) to see if it is actually helping or just bothering the development. Plus we must develop some user rules like how often do you check in to keep it mannagable … Plus i don’t think i’m allowed to ship the components. Maybe we will sell it but thats a commercial descision so not mine decision [:D] To tell you a little more, the product has different layers which communicate with each other. Navision Layer (check in and check out form + quick taskbar which does some project management like task handling) Automation Layer (makes TCP/IP connection with server and has a lot more handy tricks to make live of developer easy) ----- TCP/IP Network ----- Custom Server Program (handles TCP/IP connections + communicates with source safe) Source Safe Automation Library (comunicates with source safe server) Source Safe Server (stores all objects per project) Maybe it would help if all people that are interested in such tool (and for what price) do a posting here then I can show this our commercial people and when they see oppertunities maybe they may be confinced and sell the product. [:D] but I [xx(]dont think it will be released verry soon .