Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
OLDVAL return .NULL.
Message
From
17/06/2001 17:17:01
 
 
To
17/06/2001 17:03:47
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Miscellaneous
Thread ID:
00520390
Message ID:
00520407
Views:
11
>>>>Hi all,
>>>>
>>>>I just had a frustrating hour or more.
>>>>
>>>>A form with table buffering for specific table (of a .DBC), MULTILOCKS ON, etc...
>>>>
>>>>An APPEND BLANK, set the PK field, then SETFLDSTATE on PK field so it looks UNCHANGED.
>>>>In the Valid() of my subclassed TextBox I was comparing This.Value to the field's OLDVAL. Because it is a subclass the field can be anything so I deconstruct the ControlSource to construct the OLDVAL statement and I include the alias as a parameter.
>>>>
>>>>When the input field remained untouched (just tabbed through them) the compare never returned TRUE.
>>>>
>>>>I ultimately found that OLDVAL was returning .NULL. even though the field does NOT allow NULL (none of the fields in the database do).
>>>>
>>>>Is this normal? Checking OLDVAL in both VFP Help and Hacker's doesn't mention this.
>>>
>>>AFAIK SETFLDSTATE() does not work properly when used to make a row look "unchanged". HackFox3 says as much and I couldn't get it to work the way I wanted to in VFP5 either (don't know offhand if it was ever changed in VFP6).
>>>
>>>I have no idea if this is the root cause of what you're seeing.
>>
>>Hi Al,
>>
>>As I read Hacker's (6) the problem with SetFldState is that it cannot be used to prevent an update of the record. In my case I only use it to allow me to do a GETFLDSTATE later.
>>This part seems to work as I want. It was the .NULL. return that surprised me.
>
>Are you sure your parameter value is as expected, doesn't include trailing/leading spaces etc.?

Yes, that's why I spent over an hour tearing hair out - I checked every which way to Sunday to verify the values but never confirmed until desperate what OLDVAL was returning .NULL.
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform