Object Version Management

It’s about time that Navision added internal version management to the objects. I’d like to see all prior versions of every development object (table, form, dataport, report, codeunit) stored in the database with the ability to compare, retrieve, and batch delete. Some limited ability to write C/Side to manipulate these objects would be great too. All current version management schemes are extrenal and to some extend cumbersome. Does anyone agree/disagree? If we have a really good idea and document it clearly, Navision might include it in a future release.

Hi Jim! I have developer a version tool that I have used since version 2.00. The tool create new version of changed object and keep tracks of witch object thatwas changed in witch version. If you are interested, mail me and I will send you a copy of my version tool. Per.Bay@navigera.com Product Manager www.navigera.com

Hi Per, I’m looking for a solution that is part of C/Side. Currently, we use tools that Navision has provided plus Microsoft tools. I think we have so much invested in our current systems of source control that changing to anything else would probably not be realistic unless Navision made direct improvements to C/Side. Once I get myself “unburied” from my marathon to learn Attain, though, I may take you up on your kind offer. I always like to look at possibilites for improvements. My request comes from my experience with zope, the “Z” object programming environment. All versions of all objects are saved in the database. You can view the history of an object and see who changed what, when. You can copy any historical version to the present, of course the current version is still saved. It is really awesome. Zope saves versions of all objects. So in the Navision world that would be like saving all versions of the customer after every change. That would be very cool too. Talk about a great audit trail! It would be nice if Navision did something like this. Maybe just starting with development objects. Jim.

Hello Jim. While I think it would be a good idea for Navision to add version management (version control), I believe there are other features that are needed first. I’m sure we all have our favorites and here are a couple for the development environment that I’d like to see first, support for extended data types as in Axapta, better com support, and {gasp) a real debugger. As to the version control. I’d rather see Navision integrate with a couple of the existing packages (CVS, MKS, Interwoven, PVCS, etc). /Michael

I suppose it is all a matter of priorities. I’m just very fond of rock solid automated source code control and the easier the better. To me it is a critical key to all organized development effots. If we could get a Navision API that allowed objects to be exported/imported as text, integration with other source code control systems would sure be easy. I think that with C/Front you can get at the objects in binary form. I supposed it wouldn’t be that hard to interpret the fobs with enough effort, but Navision could change the fob format with new versions. Can you share some details on “extended datatype support” and “better com support?” Also, what does a gasp debugger do? Jim. Edited by - Jim Hollcraft on 2001 Oct 23 15:03:45

Hi. First, the extended data types allow you to define the data one time and use it in multiple places. For example, we could define and extended data type for an address as AddressExt, as text, with a length of 30. Then we could use this everywhere we need it. Now, should we need to increase the length we only change the extended data type to say a length of 50 and every place the extended data type for the address is used the length will automatically be adjusted. That’s just one simple example. The “gasp” was supposed to be someone gasping for air :slight_smile: I was suggesting a real debugger. You know the kind of tool that allows you to go forward and backwards in your code and letting you see what the values are. You know the kind you find with programming languages such as Delphi, Kylix, C++, Powerbuilder, and yes VB. You are correct about it being a matter of priorities. However, I don’t think source control is very high on Navision’s list of priorities. But that’s just my opinion. COM - Common Object Model, you know being able to automate and control other applications better from within Navision. Navision has enhanced this a good bit within Attain; however, there’s still a bit to go. For example, you don’t have full control over Excel or even Word because of the limited types within Navision. Yes, there’s many things you can do; however, it takes a good while to learn the limitations. /Michael