When trying to manually make a journal entry, in the account collumn, I type the number of my account and hit tab. But the dropdown list of accounts can’t keep up with me, so when I hit tab, it ignores whatever I just typed and fills in whatever happened to be at the top of the list when I pressed tab (usually 1110-Cash).
I know my account numbers and I’m not benefiting from the dropdown list. Is there a way to disable it, or else to force the program to use the number I typed instead of overriding it with something from the list?
Make sure your your accounts are created in Account Doctype. But when you type Account Number and if it really exists, then it selects the account when you press the Tab.
So in this case if you type 1110-Cash and press Tab, it populates the account. Even it works properly for other Link fields.
I have created the accounts I want to use. The issue I have is that when I type an account number, for example 1234, it takes a second to populate the list, which slows me down.
In order to get the software to use the number 1234, I have to type it in, wait a moment, visually see that it’s populated the drop-down list with 1234 as the account, and only then hit tab. I know it doesn’t sound like much, but it takes as long or longer for that list to populate with the number I typed as it does for me to type the number manually. Halving my speed is a big slowdown, and it makes journal entries frustrating.
If I try to go faster than the drop-down list populates, there are two ways that can go wrong:
The list starts off showing 1110 at the top. If the list is showing, and then I type 1234 and hit tab too quickly, it hasn’t updated the list. In that case, it was still showing 1110 at the top of the list when I tabbed out of the field, so it fills the field with 1110, ignoring the 1234 that I had typed there.
If I go even faster, typing 1234 and tabbing out of the field before the list has even shown on the screen, then it doesn’t place anything in the field. The field is left blank, in spite of my typing 1234 there.
It takes a few seconds for the list to load, so I can’t easily and quickly make my journal entry. I am looking for a way to either make the list load and populate what I’ve typed significantly faster, so that it keeps up with my work speed. Or else I want a way to change how the fields populate, so that it doesn’t rely on populating the list. Is there a way to make that happen?
Link fields are always going to be a bit slow because they poll the server for options. If you have a known and fixed set of values you want to choose from, you could use a select field instead. Making that work with the existing doctype is a bit complicated. There are a few approaches you could take, but all require some custom code.
If it were me, I’d probably patch the link widget to behave as a select field when the doctype target is Account. Getting that to work smoothly is not a massive project, but it’s not available out of the box.
Here’s a proof of concept from another similar request:
Yes using select field is possible. Dont give any options for select field and load it dynamically. But the main issue is you dont want to change existing Link field type to select. The second option is, add custom field of type Data in the child table, enter your account number in this field then on before_validate method set those values in standard Account field. But this will require you to type complete Account number. Third option is to enter all other details in the child table except Account and later upload that column by copy pasting from excel. As existing Link field is not solving your issue, any workaround will add extra complexity and time.