The Issue
Recently I bumped into an issue with Oracle APEX page item with "Number field" type.
It simply does not work if the page item contains large number as a value, such as workspace ID or a primary key value generated by SYS_GUID (related to Quick SQL tables and triggers generation).
https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlrf/SYS_GUID.html
https://docs.oracle.com/en/database/oracle/apex/23.1/aeutl/configuring-quick-sql-settings.html
So what is the issue?
During the item validation APEX displays the invalid number error EVEN if the number IS valid.
Like on the screenshot below, where I entered a workspace ID and tried to submit the page.
BTW - I'm using the latest APEX version 24.2 at the moment
Why is this issue happening?
I noticed a marker of JavaScript error in the developer bar and investigated an error:
It seems that the number is too big for JavaScript to handle?!
When this issue started to happen?
Originally, I developed an application in APEX version 19.2 and there I had no issues. Large numbers were handled flawlessly and I was able to enter a workspace ID and submit the page. Data validation also worked well in case that I haven't entered a valid number.
But then I installed the application on another environment with latest APEX 24.2 and got this issue.
I was curious when this issue started to happen... somewhere between versions 19.2 and 24.2.
So I started digging and figured out that APEX 21.1 introduced some number item enhancements like on-the-fly formatting and client side validation. You may check the following URL and the official release notes document (page 17):
https://www.oracle.com/a/otn/docs/apex-211-new-features.pdf
The client side implementation required JavaScript to be used and JavaScript has this number size limitation I already mentioned in previous chapter.