Welcome back! I hope you enjoyed the first post on “Item Attributes”. After a few discussions I’ve had, I’m going to do two follow up articles to last weeks one on “Item Attributes” which are a really nice addition to Dynamics NAV 2017 and D365 for Financials. f you haven’t checked it out yet, what are you waiting for?! Go check it out!! I’ll wait here…..).
If you’re reading this it’s too late. Only messing, I’ve just always wanted to say that. If you’re reading this then I’m assuming you’ve checked them out and we’re good to go. As mentioned I’m going to do two related posts, one on Enhanced Fields and one on Item Categories (which have changed pretty significantly).
Why the two related posts?
Enhanced Fields is a module we have written at my partner, The NAV People. We have a CfMD product called nHanced NAV which contains this module. They allow ANYONE to create their own field against ANY type of record in NAV or D365F. One of the limitations to Item Attributes in the out-of-the-box solution is, you guessed it, you can only add them to the Item record and you’re fairly limited to the type of field you can add.
Conscious about the content of this blog, I do feel that this is worth mentioning. Secondly We’re going to take a look at the Item Category changes that I briefly touched on last time around. If you’re familiar with Item Category and Product Group codes in NAV then these have changed quite fundamentally in 2017 so check that article out next but for the time being, Enhanced Fields…
The short version is that with these you can create your own fields and therefore extend the data that you can store without any development or technical knowledge and all of this WITHOUT modifying/customising the standard table (we hold these in another table). In the entire nHanced NAV product, we don’t modify a single object!! “No object was harmed in the making of this product” we aimed for and now preach (thank you Microsoft for Events and Extensions back in NAV 2016!).
You can add a field to any table, so if you want to add a new field to your Customer, Vendor, Contact, Purchase Line (you get the idea) record then you can. If you have any custom or third party/vertical tables then that is fine as well! They work just the same if new tables are created afterwards and you want to add a field to it without development. With an Enhanced Field you could then add it to a report, use it with Jet Reports, etc.
Adding an Enhanced Field
Let’s have a look at adding one of these fields to an Item in NAV 2017. One thing I forgot too mention earlier is that Enhanced Fields are available in every version of RTC and even Version 5 if you haven’t made the jump to RTC yet.
- On an Item page you can see this Enhanced Factbox (highlighted in Red) where we store some of our nHanced NAV functionality. Here I’ll go to Enhanced Fields.
- Open the list and press New.
3. Going to call this one Inventory Value and we’ll multiply our Inventory by its Unit Price for each item we have.
4. Type is like the data type for the field, so we can say whether it is a text value, a decimal value, etc. In this case I will select Decimal value from the list.
5. Source Type is used to calculate the value of the field. In this case it will be calculation but here are the main ones:
- Calculation – type in a formula which is calculated on this record. You can enter in field names using “” and then standard operators like “+”.
- Lookup – retrieve a value from another field. For example if you have a Vendor No. set against an Item, you can create a “Vendor Name” Enhanced Field which gives you the Name whenever the Vendor No. is set.
- Concatenate – String/combine together fields to create a long field. Useful for example with “Full Address” combining [Address], [City], [Post Code], etc.
- Pick from List – specify a list of options your user will select one. Exactly like the “Brand” Item Attribute example we stepped through last week.
6. In the calculation fasttab which has just appeared, ill enter my formula and press OK. That’s it, we’ve created our enhanced field just like that been added to every field.
7. Going back to the Item List we can now see the value of it. We can also see these on card level by adding an Enhancead Field fasttab to the card.
Here you can see the Enhanced Fields on Card level. By the way, these FactBoxes and FastTabs can be delivered as Extensions to versions 2016 and above, otherwise they can simply be added to the page:
Enhanced Fields you see below which are non-editable (like our new Inventory Value one) are non-editable because their value is generated through a calculation. Plain text or Pick from List will always allow a user to edit them.
OK that’s it for this one. In the past two weeks we’ve looked at how Item Attributes and Enhanced Fields can be used to add data to different parts of the system. Importantly neither of these require development or have any impact on the database in terms of object modifications. Both have their pro’s and con’s and can be used in different ways. As one final thought on the whole subject, there is NOTHING wrong with adding a field directly to the table as a typical modification. It all depends what the field is going to be used for and how likely the customer is going to need it in the future. Perhaps an internal business process is changed leaving fields redundant but still presented to the user in the system which will just lead to confusion and frustration. However, we’ve never had the ability to do this sort of change without modifying the system before so now, we should just consider whether it’s best to do so or not depending on the requirements but it’s brilliant that now that decision hasn’t already been made for us!!
Next time, back to out-of-the-box functionality with Item Category codes. Quite simply, these have fundamentally changed since NAV 2016, so hang on to your hats and I’ll see you then!