Auto-advance not working with barcode scanner

 

I have an app that uses an external barcode scanner.  There is only one editable field on the form, and I have both auto-save and auto-advance turned on.  However, after I scan the barcode and the form saves and reloads, the focus is not on the barcode field, and I have to manually click on the field to scan the next item.

How can I make the focus automatically be on the barcode field?  My users just want to scan, scan, scan, without clicking a mouse.

Here is my form behavior:

Scott_Nesbitt_0-1687805418322.png

Thanks

Solved Solved
2 14 871
1 ACCEPTED SOLUTION

Thanks for explaining it out! Haha. The use case was scanning barcodes via smartphone using a 'tag already scanned' validation, then entering weight values with a t-9 pad connected via usb-c.

The form auto opens to the scan field, and hitting enter via the keypad saves & reopens.

Hope I helped, I'm very much a citizen developer tinkering together apps through sheer tyranny of will.. ๐Ÿ˜…

View solution in original post

14 REPLIES 14

The barcode field must be set to "Required".  Auto-Advance only advances if the next field is a required field on the Form.

In this case, where you have only a single barcode field, Auto-Advance will automatically open the barcode scanner when the Form is opened.

My barcode field is indeed set to Required.  I do have other fields, but they are all virtual columns (so read-only.)  I tried putting the barcode field first on the form and last on the form, no luck.

Is the column set as "Scannable"?

Can you show an image of the Form?

Yes, the field is set to Scannable.  Here is the form:

Scott_Nesbitt_0-1687817869971.png

 

I did a quick test to re-affirm and it does appear that the scannable field must be the first field on the Form - even if the other fields are not editable.

I also see the value "11122333" in one of the fields which is the test value the emulator inserts in a scannable field.  Please note that you cannot test the opening of the scanner for a scannable field in the emulator.  It MUST be tested on a mobile device.   

Place the barcode field field first and, if you haven't already, test again on a phone or tablet.

Ok, when I put it first it does focus on the field.  However, after the first time it does not auto-save even though this is the only editable field on the form, and I have Advance forms automatically set to yes.

So it appears I can either have auto-focus (if field is first) or auto-save (if field is last) but not both.  ๐Ÿ˜ž


@Scott_Nesbitt wrote:

So it appears I can either have auto-focus (if field is first) or auto-save (if field is last) but not both. 


Yes, it does appear that any non-editable fields interfere with either of these features.

I also tried Required fields that are automatically populated with Initial Value.  Even this will not trigger the auto-advance nor the auto-save.  A user must actively set a value.

I think there is a reasonable explanation.  If you are providing non-editable fields or fields that a user may want to modify, a user needs to be able to indicate when they are ready to proceed - i.e. they are done reviewing and done modifying the fields.  The indication is by tapping Save.  Otherwise the user may not have time to even look at those other fields.

If the request is to be able to quickly scan, scan, scan then maybe it's not important to include those other fields?

 

 

Well, they specifically asked for the other fields as they are the previous four scanned serial numbers.  They want to be able to see them on the screen to make sure they have not skipped scanning a bar code.

Thank you for the quick and helpful responses, but I guess I cannot accomplish what the user wants in AppSheet, correct?

I had this issue when building out a small scanning app to verify tags. My workaround was to have the barcode field be the ONLY field on the form able to accept input and it would auto advance. The only other information I had on that form was from a show column.

Wait, so if I change my previous serial numbers from Text to Show, it will work?

THANKS!  @CapnBluntbeard 


@Scott_Nesbitt wrote:

Wait, so if I change my previous serial numbers from Text to Show, it will work?


Yes!!  I just tested it and it looks like that is the way to make this work.  

CAUTION:  If you are using auto-advance to scan a barcode AND auto-save, the user will never get a chance to see those other fields on the Form UNLESS there is some kind of validation that interrupts the flow on an error - e.g. a scanned barcode that was already scanned...or...does not exist in the system list but is expected to.

 

Thanks for explaining it out! Haha. The use case was scanning barcodes via smartphone using a 'tag already scanned' validation, then entering weight values with a t-9 pad connected via usb-c.

The form auto opens to the scan field, and hitting enter via the keypad saves & reopens.

Hope I helped, I'm very much a citizen developer tinkering together apps through sheer tyranny of will.. ๐Ÿ˜…

Thank you!!  It works perfectly now!

I have the same problem, because i can`t solver with the solution in this post, can you help me?. Exits other options?

Top Labels in this Space