- William Beale
- PowerBuilder
- Sunday, 28 February 2021 05:59 AM UTC
I’m trying to trap an item error event message to enable a user to enter a new text value to a code-based drop down datawindow.
The DDDW is set to allow editing. ‘Empty String is NULL’ is checked. Is not set as a ‘required’ column. The DB is MS SQL Server but the column in question cannot be set to NULL because it composes the primary key.
Text values and corresponding numeric code for the DDDW are stored in a lookup table.
If a User enters a text value that is not in the table, in the item error event, I want to trap the error and send a message the effect, “Your entry, ‘xxxxx’, does not exist in the lookup table. Do you want to add ‘xxxxx’ to this table?’
I then have a function that adds the new text value and corresponding numeric code to the table, and refreshes the DDDW with the intent to allow the User to proceed. In doing this, my intention is to hopefully bypass the item error event.
However, when I attempt, via code in the item error event, to get the invalid text value from the entry in the DDDW to send to the function, I get a message, ‘Item ‘xxxx’ does not pass the validation test’
I’ve done a global search of the entire pbl set to find elements of this message, ie a search on ‘does not pass the validation test’.
I’ve also searched on PB validation code but come up empty.
Stepping through on debug hasn’t helped either in attempting to locate the source of this message.
Because I can’t locate the source of this message, or bypass it, I wonder whether it is hardcoded and thus inaccessible in the datawindow object (I use u_dw from a 1997 pfc pbl).
I appreciate I can devise stand-alone ways and have the User side-tracked to add to the DDDW but I’d like to make it simple and allow them to do it on the fly.
Any suggestions how I can bypass this validation message or is there another strategy?
Find Questions by Tag
Helpful?
If a reply or comment is helpful for you, please don’t hesitate to click the Helpful button. This action is further confirmation of their invaluable contribution to the Appeon Community.