Category Archives: Uncategorized

Recap of Directions 2016 – Figuring It Out

This is a recap of my experience at Directions US 2016.

NAV Directions is an event hosted by NAV partners for NAV partners. In reality, it’s just a large Microsoft infomercial for partners. Microsoft has giving us what’s to come and the directions (pun?) they’re taking with the future of business software.

Welcome to Directions 2016: Figuring Sh*t Out
The NAV Directions committee should’ve created an appropriate name for this year’s event. The conference featured a lot of cool stuff, but also a lot of questions surrounding its details.

The event highlighted what Microsoft is currently doing as well as where they’re going with the product and the product ecosystem. However, a lot of what they’ve released to do seemed half-baked and left all of us wondering not only when Microsoft will be figuring their stuff out, but how will partners try to figure out what Microsoft is still trying to figure out so they can figure out what to do.

Important Takeaways
In case you have not heard of it by now, Appsource is the way of the future that allows all developers to publish their mods for sale on Appsource. This is a welcomed news for independent developers as they can now sell their mods for the general public. It’s good for customers as well; Microsoft has indicated that they will “let the market decide” the pricing and the apps that are popular. Hopefully, we will see an end to outrageously expensive add-ons that are on the NAV channel.

– Anyone and their moms and publish apps on the Appsource
– way to quickly get your mod out into the world without doing too much marketing.

– You can have people that have no business doing NAV publishing crap on Appsource.
– No monetization?! It’s not a market if you can’t sell anything. Microsoft is still trying to figure this one out.

It’s the way of the future. Microsoft has open encouraged all partners to develop their mods on Extensions. I will make a quick video on how to create an extension in a future blog post.

– You can deploy it on multiple sites easily quickly
– Deploy it on Appsource for sale to customers that you would never otherwise talk to
– Debugging, no one can see the source code. You can easily see the problem here in that users can be held hostage by the app developer for their financial data (this is not Angry Birds we’re talking about here).
– Still a ton of questions on flexibility of extensions. Microsoft and partners are still trying to figure this one out

Dynamics 365
The initial release will be called Dynamics 365 for Financials. It’s built on a Dynamics NAV 2017 platform. It will be part of the Office 365 offering at around $40 – $50 per user per month. The target for this product, as it stands, will be to replace Quickbooks Pro users. Later on, they will release (or unlock) more functionalities.

– Appsource. You will get a wide varieties of add-ons that you can quickly buy and deploy.
– It’s cheap and packs the power of Dynamics NAV.
– Frankly, I don’t even know who my clients buy their Office 365 from. How will NAV partners compete in this space? How will the NAV pros help in this sector? Perhaps the product will be so easy to use that you will not need a professional to help you. Still trying to figure out how to incorporate this as a VAR.

After leaving this event, I left with more questions and uncertainty than I came in with. It’ll be interesting on how it will all shake out.

Why am I doing Dynamics NAV

Recently, one of my employees challenged me about what my goal is for the company. I was taken a back because I never thought about this. I knew why I was working in this industry but I never thought it was relevant to tell anyone.

What started as a short e-mail paragraph turned into a… Well… an essay. My original intention was just to circulate within the company, but I haven’t made an actual confession on this blog in a while.

My Background
The times I’ve spent with my family are my most valuable moments. Why? Because when I was growing up, I didn’t have these moments.

My father owned a business and made a lot of money. My mom was a pretty good mom when she was present. Looking at it from the surface, everything was nice. But we had a lot of problem as a family. To this day, I never understood why my dad thought money and status was so valuable or why my mom thought gambling was more important than her kids.

I don’t blame them for what happened because it’s not their fault. They had to do what they did in order to survive.  Just like what my brother and sister had to do in order for us to survive. We’ve all made decisions that we’ve regretted looking back; however, at that particular moment in time (and that particular environment) it was the best possible decision we can make.

When I was probably 13 or 14, and I don’t remember what exactly happened, I cried in bed and made myself promise that one day I will start a family of my own and I will be a good husband and a good father.

I will not let my kids to have the same kind of childhood I had. I will always be available when they need me and I will be their father. I will love and cherish my wife with all my heart and never let her feel lonely.

The Miracle
I don’t know why. Maybe God took pity on me. I was able to achieve what I wanted. I met my wife and she gave me exactly what I was missing in my life. A stable family.

Although striving to become a good husband and a good father is still an ongoing process, there’s not a moment where I don’t feel blessed and feel that I’m incredibly lucky.

The Improvement
Because of my past, I frequently think about how we can finish our work in a more efficient and accurate manner. So we can quickly go home to our loved ones.

Every time I see people work until late at night, I always think about that person(s) waiting for them at home. But they couldn’t go home; they had to finish their work.

I want them to use that time at work, and instead use that to spend time with their kids and loved ones. Because time, once it’s gone. It’s gone.

Why ERP?
So why do I want to get into the ERP software industry?

My answer is that it was not my intention. You remembered when I said that I was lucky earlier? I think I really am.

When I was a student, I only had a student visa. After I graduated, I needed a company that was willing to sponsor for my permanent stay in the US. My grades weren’t that great and my social skills were lacking, but I made sure my determination and persistence was there. After countless interviews and networking/recruiting events, no companies hired me.

My lucky break came when one of my friends gave my resume to a company that sold Navision (my friend worked in a company that bought NAV). This company was very special, it was their strategy to hire a tone and fire quickly you did not work out within a few months.  During my 2.5 year at the company, I must’ve seen 30-40 people come and go, and we were only a 10 people company.

At the time when I got started, we had the Y2K problem. Within a month, there were on average of 3-4 implementations going on. It was trial by fire. Tiring, but fun.

The Revelation
I remembered my first year in this company. When I go to client sites to implement NAV, I couldn’t believe why people needed to work such long hours. What were they working on? Why does it take such a long time?

I always thought, if they can finish their work could they go home earlier?

This gave me the insight into how I can use software to help other people. I wanted to learn more about ERP (in particular Dynamics NAV) so I can help others.

This will become my tool to help others to have the opportunity to give what I’ve always wanted when I was growing up. A happy family.

Chinese Language Pack for Dynamics NAV (Navision)

Recently, we started a branch in Taiwan. One of the reasons, amongst other reasons, I started this branch is because it’s country where I was born. So in a way, I feel a little obligated to help the companies in my home country to be more efficient and enjoy the benefits in what Dynamics NAV has to offer.

There are many lessons learned in terms of starting a company in a different country; the local culture and views on technology, how to speak and appeal to the local management, etc. I’m sure I’ll blog about in a future article. For now, I want to share with you guys the many challenges when doing translation in Dynamics NAV (Navision).

One of the Technical Challenges
When selling into a local market, one of the things that is mandatory is whether you have the local language pack. As you know, Dynamics NAV is a software that’s utilized all over the world. Microsoft also supports languages for many countries out of the box.

Unfortunately, the Chinese language pack is not one of them. This means we had to create our own.

The Process
The process involves creating caption for all the fields, errors, messages, reports, etc.

There are 3 main parts for creating translations that works in Dynamics NAV.
1. Translate the platform by translating the resource file for each DLL file.
2. Translate all the captions by adding a new language into captionML in each object
3. Localize development environment by translating .stx and .etx files. These 2 files have to be sent to the Microsoft regional office and sealed by Microsoft. (Only required if you want the Development Environment to be in Chinese as well)

Fortunately, Microsoft provides tools that allow you to make your own localization. In our case, we did this for the Chinese language. The step by step instruction on how to do this is explained here. Basically download the PLLP (Partner Localization and Translation Licensing Program) and follow the instructions very carefully:

You will spend most efforts on translate all the captions. However, this part can be accelerated a little bit by exporting all the captions in txt file. Once you translate all the exported captions with A1033 code (English label) to the corresponding language code (e.g. A1028 represents Chinese Traditional), import the txt file back to NAV. Then it’s done!

Introducing the Chinese Language Pack for Dynamics NAV 2013 R2
As you will see, we did this for Traditional Chinese, but the nice thing about this is that it can be easily translated to Simplified Chinese.

Here are the results:

Chinese Dynamics NAV Selection

Chinese Dynamics NAV Selection

Chinese Dynamics NAV Role Center

Chinese Dynamics NAV Role Center

Chinese Dynamics NAV Departments

Chinese Dynamics NAV Departments

Chinese Dynamics NAV Customer Card

Chinese Dynamics NAV Customer Card


Processing and Fixing Vendor 1099 Codes in Dynamics NAV

It’s that time of the year again. Time to send out those 1099 to your vendors in Dynamics NAV.

Here’s a quick video of how to process 1099s in Dynamcis NAV and how to process vendor 1099 invoices and and print out 1099 forms in Dynamics NAV (In 2 minutes or less no doubt).

If you forgot to put in the 1099 at the time of setup (which you should’ve done when you made your vendor sign that W-9 form), it will not be defaulted when you enter the purchase invoice. But don’t worry, here’s an object that will fix all of the historical transactions for the vendors with a valid 1099 code specified on the Vendor Card.

Note that this function will not address the situation where some invoices for the vendor are 1099 liable and some invoices that are not 1099 liable. This program will go through and modify all of the historical transactions assuming the 1099 code for all historical invoices are what’s setup on the Vendor Payment tab.

I would highly suggest that you get with your Dynamics NAV partner to do this with you.

Here’s the object. The object is Report 50095 – Fill in 1099. I’ve included the .fob and the .txt file:


Hardware Requirements for Dynamics NAV 2013 “NAV 7”

Looking through the hardware requirements for Dynamics NAV 2013, it looks like there are a couple of things the end user will need. More noteable, it looks like now the computer has to be running at least Windows 7 in order to use the NAV 2013 Windows client.

There are mixed feelings about this, while I do understand that Windows XP is no longer supported at Microsoft, I’d safe at least half of our customers that are using NAV are still using Windows XP. So if an upgrade is considered by the end user, they will have to budget for the OS as well.

Not to mention the new customers that are considering Dynamics NAV as their ERP of choice over the competitors. If XP is running okay, why am I going to spend another chunk of money on each computer?

Options Available
Fortunately, the era of desktop computing is dying. We actually have quite a few customers replacing the desktop computers with Thin Client boxes for each non-executive people in the office. What people basically do is RDP into a powerful server to do all of their data entry, report processing, e-mails, etc.

Let me say that these thin clients has dramatically lowered the IT cost of maintenance for each user in the company, not to mention virus infections, going to sites they’re not suppose to, etc. So the next time you’re planning to do a mass upgrade for all of the computers in your office, thin clients may be the better option. This is especially true in this case where the new ERP requires new technology.

Depending on how hard the community pushes back, maybe they’ll add XP compatibility probably as a service pack or something. I personally do not believe this is necessary, but I’m just one man.

Here’s a complete list of the requirements if you’re upgrading to Dynamics NAV 2013 or Navision 7.0.

Entering A/P Credit Card Transactions in Dynamics NAV

Here’s quick tip on entering transactions for the credit card. Sometimes, when you make a purchase using your credit card, but you want to keep track of the purchase against the vendor, you don’t want the credit card statement to come in at the end of the billing period to enter that information.

The Easy Way to Do It
Here’s a way to enter that information against a specific vendor instead of towards your credit card vendor account (i.e. American Express).

Here’s what you’ll need:

1. Setup a Credit Card Clearing account in your G/L account (should be in the short term Liabilities section of your COA)
2. Setup the vendor that you’re buying from
3. Setup the Payment Method Code and have the Balancing Account set to the Credit Card clearing account on step #1

If purchase does not need to go to a vendor and you just want to treat it as an expense:
1. When regular bills come in through the statement
2. Enter the purchase invoice with your credit card vendor
3. Enter the expenses directly to expense G/L accounts

If the purchase needs to go to a specific vendor that you pay the purchase using your credit card:
1. Enter the vendor
2. Setup payment method code for the AP vendor described in step #3 above
3. Enter the purchase invoice
4. Allocate it to the proper department/salesperson/project/etc using Dimensions
5. Make sure the Payment Method Code is set properly
6. Post the purchase invoice

When you drill down on the vendor ledger, you’ll noticed that the Invoice will have been paid by a coorsponding entry. The reason is because you did infact paid for this purchase with your credit card. The amount that you owe for the credit card will be recorded in the Credit Card Clearing Account on the G/L.

When the statement comes in, instead of having the transaction go into the regular expense account, you will use the Credit Card Clearing Account. So at the end of the billing period the Credit Card Clearing Account will always be 0.

The same concept can be used to handle credit card charges for salespeople on the field. Some companies uses separate G/L accounts for each sales people, some people use dimensions. It’s really up to you.

Hope this tip helps!

Different Flavors of Warehouse Management in Dynamics NAV

Dynamics NAV (Navision) is a comprehensive ERP system. As such, it has many features that caters the different needs of businesses, for example, manufacturing, service managment, CRM, distribution, etc. Each one of these functional areas can be configured a number of ways depending on the needs of the business. During my time working at AP Commerce, there are never any shortages of investigating different setups based on on the needs of a business.

What you think you need may not be what you need. Yes, I did write that in one stroke without flinching. One of the most common requests from potential and current users of Dynamics NAV (Navision) is they want to effectively manage their warehouse using warehouse management system.

The question I’m always tempted to ask is: “What type of Warehouse Management are you looking for?” Of course I never ask that question because this will cause more confusion than I can handle.

So why am I tempted to ask that question? Again, in each functional area in Dynamics NAV (Navision), there are a number of ways to set it up. Having said that, here are different ways to setup WHM for your business. Note that Warehouse Management can be defined per warehouse, so every warehouse that you have can be setup differently.

NOTICE! The purpose of this article is not to give you a complete step by step instruction on NAV warehouse management, the purpose is to give you some knowledge on different ways to go about implementing WHM so you can have some knowledge and input when you speak with your Dynamics NAV partner on it.

One word of caution is when implement ANY warehouse management system, you have to make sure your warehouse is organized, efficient, and accurate. A lot of companies make the mistake of buying a warehouse management software because the warehouse is too messy.


Software, in general, is designed to streamline your operation and speeed up the processing. If your warehouse is disorganized, inefficient, and not accurate, any warehouse management software will make it worst. You will be disorganized, inefficient, and inaccurate at a faster rate. Garbage in, garbage out.

The Flavors
Here’s a picture of the Warehouse Mangement setup in Dynamics NAV:

Bin Mandatory
From initial look, if you just want to keep track of the items on the bins, this is the option for you, right? Unfortunately, no… I’ve never been in an implementation where we just place a checkbox on this field without at least enabling Ship/Pick or Receive/Put-away.

Just checking this on enables you to keep track of items by bin, however, one of the main problem with just checking this on is that you specify bin on the purchase and sales order. So if you have an item that’s on 2 different bins, you have to split the sales/purchase lines. Not only that, if you want to move an item from one bin to another, you have to use the item reclass journal, which effectively creates Item Ledger, value entry, and the general ledger. Doing physical inventory may also create a lot of excessive entries that will bog you down when you use the Item Ledger to do any sales and purchase analysis.

Pros: Allows you to tag bin code to an inventory transaction

Cons: Have to split sales and purchase line so the quantity matches the bins on the item ledger Creates a lot of excessive entries to key ledger tables Makes life harder than it has to

You Typically See This Setup for: No one. You’re better off using the Shelf/Bin No. field on the item card. This is how NAV 2.0 handles bins. We’re in Navision version 7 (Dynamics NAV 2013) now, no sense in going backwards when there are better options.

Require Shipment/Receive
Just enabling these option allows you to use the Warehouse Ship/Receive function. The main purpose of the Warehouse Ship/Receive is to allow the user to batch the sales orders by a container or a trailer going out per carrier. This option is typically enabled for companies that ships and receives by containers. The warehouse shipment is typically used to generate your bill of lading for the trucker.

Without turning on Pick and Put-away, I would NOT recommend turning on Bin Mandatory. You would encounter the same problem that I’ve stated above. For smaller companies, spliting up the warehouse process may not be necessary.

Pros: Allows you to Ship and Receive by container or bill of lading Warehouse Manager can control what he/she wants to ship based on released orders instead of the order processor printing out a pick ticket The warehouse process is separated out from the order fulfillment process (so warehouse can do their own posting) More accurate inventory can be achieved since inventory can be relieved when it’s shipped

Cons: Not recommend to enable Bin Mandatory (same cons as above) Not necessary if you do not wish the warehouse people to be posting stuff

You Typically See This Setup For: Large item distributors or manufacturers that want split out their warehouse processing, but does not care of bin contents Companies that ship and receive by containers but do not want to split their items into bins in the warehouse

Require Pick/Put-away (No Require Shipment/Receive)
This is an option is what I would like to call the mini-fullblown warehouse management. This options provides the flexibility for the warehouse staff to create warehouse put-away and warehouse picks as they see fit, they can also assign these warehouse documents to the appropriate people to do the processing. Another way to use this feature is to allow the order fulfillment people to create the pick request to the warehouse without actually printing a pick ticket.

The draw back of using this option is that you’re only allowed to have one sales/purchase order per put-away/pick. This means that you won’t be able to group the orders together in one warehouse shipment (as stated above) to generate a consolidated bill of lading. Same goes for the receiving side, you won’t be able to receive by container or by bill of lading.

This option works perfectly if you want to enable Bin Mandatory. The Inventory Pick/Put-away document generated will allow you to split lines at the warehouse document level so you can put the items away in their proper bin without having to modify the original purchase or sales order.

Pros: Allows you to easily process inventory transactions by Bin Warehouse Manager can control what he/she wants to ship based on released orders instead of the order processor printing out a pick ticket The warehouse process is separated out from the order fulfillment process (so warehouse can do their own posting) More accurate inventory can be achieved since inventory can be relieved when it’s shipped

Cons: Not able to group orders together into one shipment or receipt Not be able to use ADCS (wireless handheld)

You Typically See This Setup For: Companies that would like to organize their warehouse by bin, but does not have the manpower to go Directed Pick/Put-away.

Directed Pick and Put-away
This is the full deal. It has all of the benefits that I’ve listed above. Group order together by warehouse shipment and be able to pick and put away by bins. Not only that, this allows you to use ADCS (wireless handheld device) so your warehouse staff and record warheouse transactions using the handheld.

All good right?
Not exactly. It really depends on what your company needs. All these features sounds cool, but if your business does not need it, trying to shove it in may create more work and processes than necessary. There are a couple of steps where the user need to interface with a computer when you enable Directed Pick and Put-away:
1. Create the sales order
2. Create warehouse shipment
3. Create pick
4. Register pick
5. Post warheouse shipment
6. Post sales order

Whereas if you do not enable any of these, the steps would be:
1. Create the sales order
2. Post the sales order

It’s highly recommended that you get with your Dynamics NAV partner and discuss which setup is right for your business RIGHT NOW with consideration for future growth. If you try to implement everything without any consideration for your current operation, the opertional efficiency will decrease. This is because of the increased overhead and maintenance that are required.

Make sure your company have the manpower and the infrastructure to absorb the overhead and maintenance required so the increase in efficiency and accuracy can be realized.

Do not implement some feature just because you like the feature. In most cases, it will be overkill. It’s like buying a size 10 top-of-the line Nike tennis shoes for your 3 year old son and forcing him to walk in it every day. Eventually, he will grow into it. But by the time he grows into it, he’ll develop some other major problems that will cost more money to fix.

NAV 2013 Technical Documentation on What is New

Just a quick note. If you don’t have this link already, here’s the MSDN article on what’s new in version 2013:

Import Budget into Excel in Dynamics NAV RTC

When you’re working in the RTC environment in the G/L Budgets, the standard NAV function is that you can export the Budgets into Excel, edit it, then import it back in in the same Excel format. This works fine in the classic client, however, when you try to import the budget in Excel in the RTC environment, you get the error message:

Dates have not been recognised in the Excel worksheet

The problem, as explained by my local Microsoft rep, is caused by the Dynamics NAV server recognizing the field in Datetime instead of just regular date. The solution to this problem is to modify report 81 with the following object.


The code for the changes is found here:

Auto-hide Taskbar Does not Autohide in Windows 7

This post is not Dynamics NAV (Navision) related, but I hope it’ll be extremely helpful because real estate space is really scarce on the desktop. Especially when you’re trying to cram all that data on to your screen.

This was troubling me for the longest during one of my demo sessions. Basically, I set my start menu to use auto-hide because I want to utilize all the space on my screen. The taskbar really gets in the way of everything we do.

Sometimes, the taskbar will not auto-hide. After browsing Google, the problem is caused by some notification or processes running in the background. What troubled me was that this only occurs every so often.

The problem is caused by the SQL Server Management Studio. You know, the annoying notification that asks you to give them your opinion on SQL Server. It turns out, you can’t just ignore that or else your taskbar will never autohide. The way to resolve it is to do this:

Basically, you have to set the Behavior of the SSMS notification to Hide Icon and Notifications. After changing this, my Auto-hide taskbar is working again.

If you don’t have SQL Server running in the back end, then I would suggest hiding the Icon and Notification for the different programs to see which one is causing it.