Issue 104023 - Cannot re/set "Input required" property when "Empty string is Null" is "No"
Summary: Cannot re/set "Input required" property when "Empty string is Null" is "No"
Status: CONFIRMED
Alias: None
Product: Base
Classification: Application
Component: code (show other issues)
Version: OOo 3.1
Hardware: All All
: P4 Trivial (vote)
Target Milestone: ---
Assignee: AOO issues mailing list
QA Contact:
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-08-05 13:13 UTC by ottoshmidt
Modified: 2017-05-20 10:47 UTC (History)
3 users (show)

See Also:
Issue Type: FEATURE
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description ottoshmidt 2009-08-05 13:13:32 UTC
Steps:

 1. Form in Design mode
 2. right-click any field and Control
 3. under Data tab, When "Empty String is Null" set to "No", "Input required"
becomes inactive, but form will still be dependent on the entry in that parameter. 
 So if you want to set "Empty String is Null" to "No", you'll first have to
adjust "Input required" parameter to needed value (Yes; No) and then Change
"Empty String is Null" to "No".
Well it's not a big issue but still might be confusing for the first time
Comment 1 drewjensen.inbox 2009-08-06 03:01:18 UTC
Seems to me - if you set "Empty string to NULL" = NO 
then a setting for "Input Required" is no longer valid - the field will always
have data in any record created with the form. Disabling the property would make
logical sense in this case, IMO.

I would certainly think this merits a note in the OLH and users guide (when one
appears).
Comment 2 ottoshmidt 2009-08-06 09:40:21 UTC
The thing is that if I insert MySQL TimeStamp column and want to watch it in a
Form. I create TextBox (or something) to display that timestamp for a given
entry, but I won't change it myself. When I set "Empty String is Null" to No I
suppose that "Input Required" is no longer valid, but if under "Input Required"
remained value Yes.. the Form won't let me save entry unless I enter anything in
that TextBox, while I have that Textbox read-only 'cause MySQL inserts
TimeStamps automatically...
 Not knowing that I lost 1 entry data and needed to reenter after correction
"Input Required" to No... Not a big Deal but still..
Comment 3 Frank Schönheit 2009-08-12 14:19:06 UTC
Indeed, the *runtime* checks for the value of the InputRequired property, and
ignores the "Empty is NULL" property. Speaking strictly, this is correct: "Empty
is Null" is evaluated at the time a modification you do to the control is
committed to the database row (which is usually the case when you un-focus this
control).

The runtime check, however, is made *after* that, it it checks the database row
(before it is actually sent to the database) for fields which are NULL though
required. For any such field, if there is a control bound to it, which does have
"Input Required" set to "Yes", the runtime complains.

(In particular, if you travel to a new record, then the "Empty is Null" property
is *never* evaluated, as there's no user input to transfer to the database row.)

Design-wise, the "bug" is that "Input Required" is a per-control property,
instead of a per-database-field property. In the latter case, you could tell OOo
that for any control ever bound to that field, input is not required - once and
for all (instead of once for every control).

However, adding such client-side per-field properties is difficult for various
reasons, so it's a control property now.

The second bug is that "Empty is Null" has an influence on "Input Required"'s
enabled/disabled state. As explained above, both apply in different scenarios.

Perhaps the most feasible fix indeed is to simple remove that dependency in the
property browser.
Comment 4 Marcus 2017-05-20 10:47:49 UTC
Reset assigne to the default "issues@openoffice.apache.org".