How to get started

Hi everyone, the company I work for as it-consultant has purchased Navision Financials, and in the last few weeks it has become clear that the company that implemented it simply hasn’t got enough knowledge about the processes in the company, and is not willing to or able to get to know the company enough to program extensions to navision that fit the needs. (I thought they could do it, and was away for some time - so partly my failure :-(. So, I have object designer and the odbc module, I experimented a bit with the first one today, and I think I could handle it, but the problem is, I simply have no documentation for both, and for some things, you just need some basic reference (I can program C, Java, PHP, Perl and VB, so technical understandig is not really my problem). I just need to know simple things like e.g. where do I find the code for a button, what’s the syntax for the C-Variation that Navision uses, and things like that. Is there some catch, like being a Navision Solution Center to getting this information, or did the company that we hired for implementation just miss to give us the standard documentation for this modules? Regards, Stephan

You already do have the two most important things to get started. 1. An object designer full of objects, the code freely visible and therefore providing examples for every kind of task you might need to accomplish. 2. An online Reference of the C/Side language which explains every statement, trigger or property. I think this is everything you need. Little advise at this point. Before you start programming, you should spend a couple of days tracking down what existing objects do. I remember when I started with Navision, I started programming too early and many times I created a function which was already part of Navision Standard. I simply didn’t look good enough to find it. Marcus Fabian phone: +41 79 4397872

Why not just change find an NSC with the right Skills?. The designer is fine if you just want to add token fields to a table here and there, the access to the code is limited and you can’t get into the codeunits if you want to carry a field when posting, add the same field Name type and number to the “Sales Invoice Header” table as the “Sales Header” and it will carry across without code, but you will not be able to carry it down to the ledgers. If you are new to Navision you will not have the know how tp do any decent development untill you have used the package and played with it to find the Navision methods and programming style. David Cox MindSource (UK) Limited Navision Solutions Partner Email: Web:

Stephan, I see still a few problems: - lack of knowledge of Navision conventions regarding posting, table relations etc. - which modules (a.k.a granules) has your company licensed ? I’m in doubt that you have an application builder or solution developer license. Therefore I guess you are restricted to simple table/form/report design (assumed you licensed these modules at least) without any programming. - if you find a developer license by chance (how can one find a developer license by chance ?!? :wink: its replaced every few months. I’d suggest you better talk to NavisionDamgaard (PC&C in Hamburg if you are located in Germany) about changing the NSC which doesn’t seem to be a problem at all. Bye, Torsten

Stephan, If that NSC has sold you the designer license (but please do check what level of design it encompasses - knowing the prices for full designer licenses, I doubt if you have full access to everything…), they should have provided you some documentation also, or offered you to get some training by either the NSC programmers or from Navision. There’s a document in the Navision library (for NSC’s) called CALGUID.pdf which explains the basics for C/AL programming and the syntax of some common statements. But, speaking from experience, the most challenging part with modifying or expanding Navision functionality is not as much a matter of how to program something, but by far more a matter of what to program. Creating some reports won’t give you much troubles (although we made reports that were very complicated), but when it comes to making changes to i.e. the core posting routines, you’d better know very well what is happening where and why and how and which consequences it may have! Are you sure you do want to take the quite steep learning curve for mastering Navision, only to do a few adaptions yourself? Or would you be better of by either changing NSC (there should be competent ones near you), or by hiring a skilled programmer to do the job for you - much quicker and -in all due respect- much better. Hint: Marcus Fabian and David Cox are “freelance” programmers… John

You (David, Torsten, John) are warning Stephan about trying himselfes to take programming into his own hands. You are right doing so. However, from experience I believe that this will be a futile attempt. From the point of view of an NSC, customers with some experience in programming (mostly access and VB) are the most difficult customers as they believe to have programming knowledge and it takes more effort to persuade them that a solution in NF might look different from what the customer would try to accomplish using Access. I am sure that - despite all warnings - Stephan will try to solve his problems himselfes. Probably he will succeed, probably fail. But he won’t take the advice to look for another NSC unless he has tried his own limits. So what can happen in worst case? Even if he completely spoils cu12, 80 you can still replace them with a clean fob and a new NSC can take over and develop the application from the scratch. Marcus Fabian phone: +41 79 4397872

Hi all. thanks for all your replies. To clear things up: no, I do not want to replace the nsc, I am really to busy to do major programming tasks myself. So @fabian: no, I would never try to make changes to Navision that would change anything in what I would call ‘business logic’, that means, fields that play a role way beyond simply being written to a field in a talble that is not joinded to other tables, things like that will simply be passed on to the nsc, though I hope with a clearer understanding how it should be implemented (That is, I at least think that I know my limitations). The problem simply is that in my opinion, the nsc programmed extensions if they were requested by the firm, without ever thinking about whether that is the best solution regarding the workflow in the company, in part I would say that would have been their responsibilty, in part I would say that you simply cannot expect the nsc to have the knowledge of the company that I have after working some years with then. For some part, I had thought that the nsc would be more involved in really basic things like training the employees, I was there for half a day on friday, and since they now have been working with navision for three months, I simply was embarassed that nobody had told them rather simple things like that you have to use ‘@’ to get a case insensitive filter - and that is really important for a company where the first step when one of your 10000+ customers calls is locating his record to see his data. There are many points like this, like e.g. the report templates not changing for the second page, and so forth, and that are the things that I will change myself, but, as I said, I would never change anything that relates to the logic of the application itself, that will be still be done by the nsc. Regards, Stephan

Things are becoming more clear now. However Stephan, without knowing your company nor the way it was agreed to implement Navision, I like to comment on some points. Wasn’t a decent user training part of the deal for installing NF? To speak for ourselves, we urge new customers to organize user-meetings where our trainers will go through all the basics (filtering, lookup, drill down, etc.). Thereafter the trainers are going around the department(s) to assist the users during the first days to get a grip on the daily routines, looking for pratical ways of doing things, giving tips to accomplish tasks, and so on. Of course this is costing some money for the client, but it is an easily justified investment to get full productivity from the staff in the shortest time span. We do always have discussions with the key-people at the customer when changes, extensions or modifications are requested. Why? We want to know the business logic behind the request. Is it something that’s already available in Navision, perhaps only under a different name? What impact does the change have? Sometimes this kind of discussions lead to making no changes at all - just “educating” the customer, and sometimes it leads to a full blown additional module with months of development time. In our opinion, making an inventory of the wishes and processes (a.k.a. a Design Study) should always be the first step. From the Design Study comes the Functional Design, which is discussed again. Only when both parties agree, actual development is started. That’s (in short) our approach, and AFAIK also the preferred one by Navision headquarters. The slogan of Navision is “we put your company in our software” - but how would you do that when you don’t know the company? Agree with Marcus that clients where programming knowledge is present are the toughest ones. We have several clients who are IT companies themselves and it easy to get lost in technical chitchat on programming techniques at such places. But then again, it’s far more important to know what to program then how to do it. And let them show their expertise on their field, while you show yourself as the expert on Navision. In general, keep in mind that Navision is an open system with lots of flexibility to make a solution exactly fit the client’s needs. But that client must have expressed its needs, and you must make sure that all parties know everything is understood. Better to discuss on forehand than afterwards. John

Stephan 3 month in the Navision world is very little. I would suggest that you ask your NSC to find you an a Good Developer with at least 3 years in Navision for some 1-2-1 intense training with you, 2-4 days would set you on your way, 2 x 2 days, if they can’t find one, find your own there are some freelance developers (but only a few good ones, which are very busy) but make sure they have NSP status. think of a small project that you could get the frame work in place for which is attainable. then get the functional help from the trainer, work within the limitations of your own licence, dont let them use thiers. you will be frustrated by the limited language of Navision but realise in the end all the tools are there. have fun David Cox MindSource (UK) Limited Navision Solutions Partner Email: Web:

It did sound like your NSC gave you inadequate training. Navision is a complex package, which requires a lot more training than most clients get. NSC personnel are usually trained by sending them off to a dedicated training facility at their national Navision HQ. (I went to the US HQ near Atlanta.) This is a state of the art facility, without any distrations, with the instructor’s machine hooked up to a 12-foot screen. Even then, things escape the students’ notice (e.g., the @-sign convention for case-insenstive searches, which I didn’t learn till I was back home and certified.) Few if any client companies place as high a premium on training as Navision US (and the other Navision companies do.) And few if any clients have adequate onsite training facilities, free of distractions. NSCs are ideally SUPPOSED to have training facilities but most do not-- and in any case, customers prefer not to send too many personnel offsite for training. ------- Tim Horrigan


Originally posted by David Cox:there are some freelance developers (but only a few good ones, which are very busy)

Yeah, David. Like you and me — Stephan, I have to admit that I completely missunderstood your first post. For me it sounded like “we have such a complicated business logic that our NSC was not able to solve our problems. So I’m doing it myselves now …”. Obviously it turns out that your NSC failed to meet the least requirements in customer-support and -training. Unless of course they had offered this service but you have refused, thinking you could save this money. Anyway, there are around 150 NSC’s in Germany and you’ll sure fine one which would take appropriate care of your company. Personally I would recommend to post a short description about your company and the problems to be solved here in this forum. There are lots of good German developers out there reading this forum and probably one of them is even familiar with your branche and the special related problems. Marcus Fabian phone: +41 79 4397872

Tim Quote: and in any case, customers prefer not to send too many personnel offsite for training. Training a small group of “Power Users” who will pass on what they have learned, is a good approach as the skillsets grow within the Company. David Cox MindSource (UK) Limited Navision Solutions Partner Email: Web: