Oct 27

Since the days of Visual Basic 6, where we were creating OCX (Custom Controls) for Navision, and up till now with COM Interop with .NET programming language, the .NET platform has become a great development platform. But because of the limitations of interoperability in NAV we haven’t been able to use true .NET assemblies directly within NAV.

Until now! R2 as you know has announced its arrival in next month (hopefully), and with it the introduction of .NET interop.

The Microsoft Dynamics NAV Team Blog has a great post on this subject, as well as real examples of how to use it. Check it out, this will rock your world!

Continue reading »

Tagged with:
Oct 26

One of the most difficult errors in NAV to troubleshoot is: “The transaction cannot be completed because it will cause inconsistencies in the G/L Entry table”. In a standard, unmodified database it is usually related to tax/rounding issues. And in customized databases, it can be all sorts of issues.

I have seen all kinds of workarounds for figuring out the data/transaction that causes the inconsistency. Most of them have been way to complicated, doing all kinds of modifications to the posting codeunit, or looking up uncommitted records through sophisticated SQL queries. Until the post by Rashed Amini back in 2007 (can be found here on MIBUSO), there was no real good solution to it.

Unfortunately there is still a lot of developers that are not aware of this priceless trick, so let’s look into how he solved the issue of looking at the transactions that caused the inconsistency.

Continue reading »

Oct 25

Last week while being onsite at a customers site, we suddenly needed the ability to compare 2 records to see if any changes were done to the data. We were using the Archive functionality for Purchase Headers, and due to some needed modifications (in the release function) we ended up storing a lot of versions of the same Purchase Header, even though no changes were actually made. With hundreds of Purchase lines and thousands of document dimensions, the Purchase Header/Line/Dimension Archive tables were suddenly almost 50% of the total database size!

So we needed to compare 2 records during runtime, to see if they are identical before actually doing the archiving. This brings us to the subject of this post, were i will go into the details of how we did this in Dynamics NAV.

Continue reading »

Tagged with:
Oct 21

Using the built-in string functions in Dynamics NAV usually gives you all the string manipulation options you need. But a common request is replacing a special char with a new string value. This example came from the previous post on SMTP Mail functionality in Pre Dynamics NAV 5 versions. Mads from Denmark, ran into an issue with HTML encoding when using national chars like: æøåÆØÅ. For some reason the HTML emails worked fine at my local computer, here with US locale settings, but changing the values to their HTML encoded equivalent might be a good idea to get better compatability.

Below you will find the simple function for doing this.

Continue reading »

Tagged with:
Oct 12

Today i learned that one of the requirements for having the small Phone icon (TAPI Integration) next to y0ur Phone No’s in RTC, is depending on Microsoft Office Communicator to be installed. But my customer needed the TAPI integration, but doesn’t use Office Communicator, instead they use a combination of Asterisk and ActivaTSP.

First task was looking at the Page, to find out how the Phone Icon got displayed. On the Fields in a Page there is a property called ExtendedDatatype, it can have these values: None, Phone No., URL, E-Mail, Ratio, Masked – and it impacts the layout and behaviour of the control in a Page. Well, installing Office Communicator is not an option, so as the developer you have to come up with a possible solution/workaround. And it was actually pretty easy…

Continue reading »

Tagged with:
Oct 11

Restoring SQL backups from customers is a easy process in SQL Server. But in order to standardize your logins for the databases, it is easier if all databases have the same database login.

So after restoring your SQL backup, this little script inserts a SA user in the User table, and assigns SUPER permissions to it. No black magic to it, just two simple SQL insert statements.

Continue reading »

Tagged with:
Oct 07

Cronus was known as the leader and the youngest of the first generation of Titans to most people, but in the Dynamics NAV community it is known as the the demonstration company name for Dynamics NAV. It comes with its own CRONUS license, that allows you to testdrive the system. Most people think it only allows you to use it to evaluate the application features in Dynamics NAV, but it actually also allows you to test parts of the development environment.

Not a lot, but it gives you access to inserting fields on an existing table, adding them to a existing form. As well as creating new forms and reports. What objects does it give access to?

Continue reading »

Tagged with:
Oct 06

Yesterdays post on assigning MenuSuite Menu’s programatically got a lot of hits, and i have been getting a couple of emails about how to create the data for the blob field. In this post I will show how to build the BLOB generator i Dynamics NAV.

The BLOB content is reverse engineered on Mayank’s Extreme Engineering blog.

Continue reading »

Tagged with:
Oct 05

The other day i was reading Mayank’s new blog Extreme Engineering Network. Especially his post about assigning menu suites automatically was pretty neat. Well it could be, as it basically just gave you the information on _how_ you could do it. Looking at a lot of hex-editor information, i decided to give it a spin!

Assigning Menu Suites to users is a painful job for any adminstrator, as you have to go into design of the menu suite, and then for each Menu you have to uncheck the box for users that should not have access. And setting up a new user, gives access to everything by default, so you have to go into each menu to unassign – lots of work!

Continue reading »

Tagged with:
Oct 02

After switching blogging software, due to a server crash i never really got the old posts reposted from the original blog. I have had a lot of requests for one particular post: Dynamics NAV and the ROT table. I started finding the old backup of the database, to restore the post and realized it is almost 3 years old. Cant believe how fast times goes by. But after reading the very interesting post from Waldo about their new tool ReVision i came to think of this old post. (unfortunately i will not be at Directions in San Diego myself, even though i just live a couple of hours from there! But i hope to get some updates from people seeing the tool demonstrated!).

Basically what the post was about was the features of Rolling Object Table, a feature that allows Windows programs to publish “interfaces” to some of it internal features – i dont know it this is the correct description of it though :). Dynamics NAV is exposing some methods to read/write objects through the client, as well as querying forms and getting other data from the client. Since my original post, there has been quite a few additional blogs featuring the technology. We (see kudos section at the bottom) were playing around with the .NET Reflector tool, and used it on one of Celenia Version Controls dll’s. I had the same features as used in the Developers Toolkit for importing/exporting objects from the running client.

Continue reading »

Tagged with:
preload preload preload
pornpants.com pornofri.com kilporn.com