Skip to content
Three lists, and the one that was never filled — transcript

Three lists, and the one that was never filled — transcript

Presentation 4 of 5 in Get your items ready for e-invoice · about 14 minutes · for the whole-system operator — you run the books.

Play this as a presentation — one slide per step, with the same narration. Every word of every step is on this page.

This lesson is for whoever is about to set e-invoice values on several thousand GadgetSphere items and wants to know what they are choosing from. The three fields on that tab are backed by three completely different kinds of list, and one of them is empty in almost every tenant. Fourteen minutes, and it will save you a failed bulk fix.

Step 1 — Look at the classification list you are choosing from

After this step you will know how much choice you have. The classification list holds forty-five codes, from breastfeeding equipment at zero-zero-one to self-billed non-monetary payments at zero-four-five. They were inserted into every tenant by a database changeset in twenty twenty-four and never touched again. Every one of the ninety tenants holds exactly forty-five rows; not one holds forty-six. So this is not a list your tenant has drifted away from, and it is not a list anybody is keeping current either. It is a photograph of what the tax authority published on one day, copied everywhere, and left.

Screen: Doc Item Maintenance, the Classifications listing showing 45 rows

Reference: Doc Item Maintenance — Classifications

Step 2 — Understand what “never refreshed” costs you

After this step you will know what to do when the code you need is not there. There is no synchronisation with the tax authority. If a code is published after that seed, nobody’s tenant will have it, and nothing will tell you it is missing — you will simply not find it in the drop-down and will pick something close. The screen does have a Create form, taking a code, a name and a type, with the Malaysian e-invoice type as the only choice. So the answer is to add the row by hand. The consequence worth planning for is that you must add it in every tenant and every company you run, and nothing will remind you.

Reference: Doc Item Maintenance — Classifications

Step 3 — Compare it with the tax-type list, which behaves

After this step you will have a control to measure the others against. The taxable type list is six rows, and all ninety tenants hold all six. It is small, stable, published rarely and seeded properly, so it is the one of the three where what you see on your screen is certainly what a colleague sees on theirs. Keep it in mind while reading the next step, because it is the reason you can be confident the measurement is real rather than an artefact: when a query finds six rows everywhere and forty-five rows everywhere, a third list that is present in seven tenants and absent in eighty-three is telling you something true.

Reference: Doc Item Maintenance — E-Invoice tab

Step 4 — Find the list that was never filled

After this step you will know the strangest fact in this series. The unit of measure has two lists, not one. The drop-down on the E-Invoice tab is a list of roughly two thousand unit codes compiled into the applet itself — it ships with the screen, so it is always there and always identical. There is also a database table for the same thing, created by the changelog and never given any rows. Seven of the ninety tenants have data in it. Eighty-three have an empty table. Nothing on any screen depends on that table, so nobody has ever noticed, and for typing a unit into an item it genuinely does not matter.

Screen: the E-Invoice tab’s unit picker, a long searchable list of codes and names

Reference: Doc Item Maintenance — E-Invoice tab

Step 5 — Find out where it does matter

After this step you will not lose a column in a bulk fix. The item file import resolves a unit differently from the screen. It does not use the compiled list; it looks the code up in that database table. In a tenant where the table is empty the lookup finds nothing, the failure is caught and discarded, and the unit column is quietly left off the item. No error row, no warning, no mention in the upload’s result. You will believe you have set the unit on four thousand items and the field will still be blank on all of them — and every line will go out in pieces, which is the value you were trying to correct.

Reference: Doc Item Maintenance — Troubleshooting

Step 6 — Plan the bulk fix around what each list can do

After this step you will know how to spend the effort. The classification is the field worth bulk-loading: the list is present everywhere, the import resolves it, and a correction reaches documents that have not yet been submitted. The taxable type is also resolvable and rarely worth setting, because the line’s tax amount decides it anyway. The unit is the one to do on the screen, or through a template on new items, unless you have first confirmed that your tenant has rows in that table. And before any of it, check whether a code you need is even in the forty-five.

Reference: Doc Item Maintenance — Import Item

How the steps fit together

    flowchart TD
  s1["Step 1 — Look at the classification list you are choosing from"]
  s2["Step 2 — Understand what 'never refreshed' costs you"]
  s3["Step 3 — Compare it with the tax-type list, which behaves"]
  s4["Step 4 — Find the list that was never filled"]
  s5["Step 5 — Find out where it does matter"]
  s6["Step 6 — Plan the bulk fix around what each list can do"]
  s1 --> s2
  s2 --> s3
  s3 --> s4
  s4 --> s5
  s5 --> s6
  

Check yourself

Three to five questions on what you just heard. Every correct answer links to the page that makes it correct, so you can check the source, not just the mark.

1. The tax authority publishes a new classification code next month. What appears in your tenant?


2. Where does the E-Invoice tab's unit drop-down get its options?


3. You import 4,000 items with an e-invoice unit column, in a tenant whose unit table is empty. What happens?


4. Which of the three e-invoice fields is the best use of a bulk import?


Answer key
  1. Nothing — the list is a one-time seed, so somebody adds the row by handDoc Item Maintenance — Classifications
  2. From a list compiled into the applet, which is why it is never emptyDoc Item Maintenance — E-Invoice tab
  3. The column is dropped silently and the items keep a blank unitDoc Item Maintenance — Troubleshooting
  4. The classification — the list is present in every tenant and a late fix still reaches unsubmitted documentsDoc Item Maintenance — Import Item
This is a self-check. Your answers are marked in your browser and stay there — nothing is sent anywhere, nothing is recorded, and the marking is readable in the page source, so it is not a credential. Open the answer key at any time.

Next: Getting a catalogue ready, and proving it · Back to the series · Play this as a presentation

Last updated on