Forum Stats

  • 3,814,125 Users
  • 2,258,821 Discussions
  • 7,892,571 Comments

Discussions

Default table filter for number view attribute doesn't validate if value is a number

Robert Šajina
Robert Šajina Member Posts: 94
edited Dec 15, 2017 3:58PM in JDeveloper and ADF

Hi,

i have just noticed that for View object attributes (or Entities attributes) that are numbers(Integer,BigInteger,BigDecimal)  a default table filter doesn't checks if the entered value is a number.

After entering a string of letters in a filter and hitting enter application stops and a "Invalid number" shows in a popup.

I know that this issue could be easily solved by adding a new InputText into Column filter facet and adding a converter for that InputText but in a big application like ours we would try to avoid this.

I am surprised that this even happens, i mean if a attribute is a Number that means no letters should be entered.

Also, if we supply a converter (On entity attribute or ViewObject attribute) why isn't it automatically added to filter component?

Is there a easy solution to this?

Anodyne also noticed this bug?

Thanks,

JDev: 12.2.1.2.0

Robert

Best Answer

  • Timo Hahn
    Timo Hahn Senior Principal Technical Consultant - Oracle ACE Director Member, Moderator Posts: 38,234 Red Diamond
    edited Dec 15, 2017 10:48AM Answer ✓

    Robert, this is not a bug at all. The filter isn't just a filter but a 'Query by Example' or QBE in short.

    You can ann something like '100 or 114' into the filter field and get all rows having 100 or 114 in the field. Here is a sample of this for the employee table

    pastedImage_0.png

    If there would be a restriction to numbers this would not be possible.

    Timo

Answers

  • Timo Hahn
    Timo Hahn Senior Principal Technical Consultant - Oracle ACE Director Member, Moderator Posts: 38,234 Red Diamond
    edited Dec 15, 2017 10:48AM Answer ✓

    Robert, this is not a bug at all. The filter isn't just a filter but a 'Query by Example' or QBE in short.

    You can ann something like '100 or 114' into the filter field and get all rows having 100 or 114 in the field. Here is a sample of this for the employee table

    pastedImage_0.png

    If there would be a restriction to numbers this would not be possible.

    Timo

  • Robert Šajina
    Robert Šajina Member Posts: 94
    edited Dec 15, 2017 3:57PM

    Hi TImo,

    i didn't know you can do that.

    Still it should check if this can even go in the query cause if you write for example 'deqewq' you get an exception when processing sql select.

    Than anything you do on the page throws this exception. It is really annoying.

    Robert

This discussion has been closed.