Since Luc Van Vugt started the NAV Clean Team, I’ve been very lazy and emailing him little things I find. Now that I’m spending more time in NAV 2016, I’ll step up and start being more vocal on Clean Team topics (and perhaps much more, since I’ve not blogged for a year).
This one I came across isn’t a Boat Anchor, but more of a strange deviation from the usual design patterns.
On the Job Journal Line, you will find these little fields:
These are populated when you use the Suggest Lines from Time Sheets… on the Job Journal. However, here’s a fun comparison when you look at the Job Ledger Entry:
The fields are not retained. When the Job Posting routines run, the Time Sheet fields are only transferred to the Res. Journal Line, which through the Resource Posting lines, carries through some information to a Time Sheet Posting Entry table, but not the Res. Ledger Entry either. That Time Sheet Posting (note: NOT Ledger) Entry table has no connections to the Resource or Job Ledger Entries. The Job Ledger Entry and the Resource Ledger Entry don’t have any way to connect back to the Time Sheet Posting Entry.
Furthermore, this very disconnected Time Sheet Posting Entry table is not connected to Navigate in any way. This, for example, means that the Time Sheet Line Comments are entirely internal and cannot be connected to by any process in the future, such as during invoice creation from a Job.
It is very strange design. It’s not quite being treated as a Document pattern, but it’s not quite being treated as a Journal-Ledger pattern. And in that grey space between the designs, potentially valuable data linkages are lost.
Is it easy to fix enough that will produce little risk? Yes. Copy the fields to the Job Ledger (and possibly the Resource Ledger). Make the three additional lines in the transfer functionality.
Easy to do as a custom. Easy as well to fix in the NAV base code.