Invoice date field (Datum) doesn't show in print-format-builder result

We noticed that the date field (in German: Datum) was missing on printouts of sales invoices built with the print-format-builder, while the date (Datum) field IS present in the print format we built.

This can have serious financial consequences because a sales invoice without a date is invalid, in which case the other party to the transaction might have to pay the tax to the fisc, if for some reason no amiable conciliation can be achieved.

So what happened?
Looking at the field list (named “format_data”) in the relevant print-format-builder document, the “Datum” labeled field seems to expect a variable named “transaction_date”.
There is no such field in the Sales Invoice documents which have “posting_date” (both in draft as well as in submitted state) and also some “due_date” (which appears as it should).

So if the expected field is empty, it doesn’t show.

But why is that?
My misconfiguration –
or a bug, e.g. a missing or faulty field mapping from sales invoice to the templating thingy?

This is the bugger from the template’s “format_data” field list:

{‘fieldname’: ‘transaction_date’, ‘print_hide’: 0, ‘align’: ‘left’, ‘label’: ‘Datum’}

as requested from our: “http://SITEURL/api/resource/Print%20Format/PRINTFORMATNAME

We didn’t put the fieldname “transaction_date” in there, but it’s labeled “Datum” and shows as such in the web UI of the print format builder. But on the generated preview there is nothing to see for it, not even the label.

The relevant field in the sales invoice is named “posting_date”.
See:

Are they somehow mapped, or is this indeed the problem?

Or could the field names of the sales invoice DT have changed after the template was built? That could indicate a migration which is applied to the DT, but not to such a template depending on the DT’s field names (e.g. an incomplete migration logic).