Sometimes you get a simple question… which then leads to the path of finding new things about the system (Dynamics NAV) which you thought you know quite well already. What is the use of System-Create Entry field in G/L Entry table? Obviously, when you don’t know the answer (or when you are not 100% sure if the answer you know is correct), you hit F1 and read:
System-Created Entry FieldThe G/L Entry Table
On all the entries that have not been transferred directly from a journal line (that is, entries from orders, invoices, credit memos, VAT posting or a batch job), there is a check mark in the field.
However, when the answer from help files, seems to be too simple to be true, you fire a few google queries. Then again (without finding an answer which would ease your curiosity) you realize that it’s time to dig deeper. So, where is the Dynamics NAV system using “System-Created Entry” field? With a little help of Dynamics NAV Developer Toolkit (I still can’t believe the tool has been discontinued since 1st of October 2011), we can see that the field is used in a few reports (for currency adjustments and data compression), but in these instances every new g/l entry created will be marked as “System-Create Entry” = TRUE.
Also, in most instances in codeunits, where function InitGLEntry is called, “System-Created Entry” will be set to TRUE. The only scenario where field “System-Created Entry” can be set to FALSE is when “System-Create Entry” field is taken from Gen. Journal Line table (for example in function PostGLAccount). Which leads us back to the explanation of help files… and confirms that explanation was correct.
On one hand it is simple and clear enough – if g/l entry was not transferred from journal line, there is a check mark in the field. On the other hand – you need to understand how Dynamics NAV works in the lowest level – that documents (orders, invoices, credit memos), batch jobs and possibly various customizations will use journal lines when posting data. Therefore, you would get g/l entries with “System-Create Entry” marked as FALSE, where the system (not user typing in data manually) uses journals for posting routines.
To summarize: if “System-Created Entry” is set to TRUE, it is definitely created by the system. If “System-Created Entry” is set to FALSE, it is created by the posting which used journal lines (either by user or system).