Methodician
Methodician

Reputation: 2516

Can you automate tasks in Microsoft Dynamics Navision? Write VBA script like Excel?

It's pretty straight forward. I want to do something along the lines of writing VBA scripts for Excel, only for Navision. So far I can't even seem to find many shortcuts or set default options in Navision. Considering all the repetitive tasks my employer asks of me, this post could be seen as a rant.

At my last job, we didn't have any fancy Navision. This was a blessing in disguise for a clever SOB like my self. I griped about their lack of technological implementation then grudgingly implemented the tools I needed myself, flying under the radar and looking like a speed demon and analytical wizard.

Now, everything is set out for me and I hate it. NAV is an extremely bloated, cumbersum program. How can I make repetitive tasks faster and easier? How can I make it better for MY tasks?

Upvotes: 1

Views: 8658

Answers (2)

Asympt0te
Asympt0te

Reputation: 41

It depends:

If the tasks you want to automate are transactional in nature (capturing stock movement, customer payments etc) then you need to look at the C/AL programming, or getting your MS partner to do the C/Al programming for you.

If the tasks are updating master data (customer groups, item categories etc), then you could use SQL to do the updating. Again, as Alexander says this requires a good understanding of the underlying tables, and if you make a mistake with an SQL update you can really break the system.

If the tasks are admin related (updating which dates users can post to each morning etc) then an SQL stored procedure that runs on a schedule is the quickest and easiest solution.

Upvotes: 0

Alexander Drogin
Alexander Drogin

Reputation: 671

Well, there's good news and bad news, as always. The good news is that routine tasks can be automated, but the bad news is - it is not as simple and straightforward as writing Excel macros.

  1. First and most common option of extending functionality is to develop new application objects specifically for the customer. Nav application code is written in its internal language - C/AL, and it's fully extendable. But writing C/AL code requires a developer's license (which is quite expensive) and good understanding of the system's structure. Usually, customers prefer outsourcing these tasks to MS partners rather then buy a dev license and keep an on-site developer.

  2. If the version you are using is 2009 and higher, there's a second option - probably the best for an experienced Excel user. You can publish any Nav page as a web service and read the data into Excel through the web service. Here is a short "walkthrough": Viewing page data in Excel. After publishing pages you need, you can apply your Excel tools to the data.

  3. If the version is 2013 R2 or 2015, some Powershell extension cmdlets are available. These are mostly for administrative tasks, but some of them can be handy in making your job easier. In particular, Invoke-NAVCodeunit that can run a codeunit or a codeunit method from outside the system.

Upvotes: 2

Related Questions