Hi everyone
I am currently working on a .NET app that must be able to connect to Navision systems (Financials and Attain in various versions) and do so without making any preparations within Navision (treat it as a black-box).
I am considering to make my own wrapper for CFront.dll, as I can see others are working on as well. But here is my question:
1) Is it possible to make a wrapper based on a certain cfront.dll version and make use of that wrapper for older versions of Navision as well?
2) I have read, that a cfront.net dll is available with the SP1 for Navision 4.0. Could I go ahead and use that out of the box for older versions of Navisions as well (e.g. Financials 2.XX)?
I am new to this forum (as I am new to Navision), but hope someone here can help a C# programmer get started on interacting with Navision.
0
Comments
re 2: I would be surprised if the 40 SP1 dll would work seamlessly with older versions. If the dll is called 'cfront' then it seems that each Navision version has its own version dll as well.
Are you planning to write one program that can interact with multiple Navision versions?
RIS Plus, LLC
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.
I am of course not trying to write my own Navision frontend . I am writing an entirely different app all together, and a small part of it concerns the ability to write to and read from Navision Financial and Attain versions without making changes to these or knowing in advance which customizations have been made - meaning I must be able to retrieve metadata about the native database and act accordingly.
I guess what I need to do is make an Interop RCW in .NET of an arbitrary version of the cfront.dll (since the interface presumably is the same) and then have whoever runs the app copy their particular version of cfront to the app folder (not even sure that is needed, if the dll is registered on the machine should the app server and the navision server be the same machine). The biggest issue here will probably be to find 2 or more different running versions, against which I can test my code, to confirm, that it actually works on different versions.
Or perhaps cfront isn't the right way to go at all?
But once again - thanks alot for your prompt responses!
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.
RIS Plus, LLC
It is just that I am making a small app for broad use in SMALL businesses. It is not a mission-critical central business app for high dollars, and as such, I would prefer it to work out of the box, without requiring end users to first install this little app and then spend a lot of money having a Navision consultant come prepare the Navision solution (because Navision culsultants don't come cheap - no offence ). Such a constraint would simply make the app unfeasible to end users.
I thought that maybe this could be a viable way to go. But if making a seamless integration to Navision this way is simply a dead end, I would rather know now instead of waisting weeks of time in an up-hill battle that I cannot win. In that case I will just have to settle for less (xsl import/export ), and from your replys I get the feeling, that my original intents were perhaps a bit naive. Maybe I am trying to force an approach that was never intended to work in the first place. I am willing to give it some serious effort, if there is hope, that it will actually work well in the end.
It probably sounds strange to a Windows developer, especially since Navision is a Microsoft product, but so far (up to 4.0 SP1) Navision does not have an API or an object model that you can access in .NET. The integration options are limited (but with a little imagination endless ), and almost always require you to do Navision development.
It depends on your design by the way if a user will need the help of an 'expensive' Navision consultant. You could develop a solution that is entirely customizable through setup options. You could write good documentation that explains it all to the users. That way, maybe all it takes is one hour of install and initial setup and the user can take it from there. It's all in the design.
RIS Plus, LLC