PDA

View Full Version : Set_field_ucvalue



Martin
21-Jan-2016, 06:05 AM
Hi,

When running the following code in a Loop we get SET_FIELD_UCVALUE error 98, Note this code work in Beta 3. Any ideas?



Set Field_Changed_Value of Tms023_DD Field TMS023.MD_SIGN_OFF to "Y"
Get Request_Validate of Tms023_DD to iValidate_Error
If (iValidate_Error = 0) Send Request_Save of Tms023_DD

John Tuohy
21-Jan-2016, 12:20 PM
Hi Martin,

I'm not sure what would cause this. We didn't make any changes in this area. Can we see the error call stack.

-John

Martin
27-Jan-2016, 04:56 AM
Hi John,
Sorry for the delay, most of the time the application crashes taken the Studio with it so no call stack or just locks ups. So I'm going to try to break this part of the application down and do some more testing....

Martin
27-Jan-2016, 07:43 AM
Hi John,
We have got to the issue; in the dd we are changing the value of Text fields by either Set Field_Changed_Value or field_changed_pointer_value.
The issue is the Change state (Is_pValueChanged) is always false even when the value has changed (the “old” field value appear to have the same length of the new value). The subsequent Send Field_Pointer_Value_Changed iField pData that actually performs the change is therefore not called. The application then hangs, which suggests something nasty has happened with the underlying memory addresses

If we force a change text field in the dd by setting the Field_Changed_Value to blank, then the intended value, it forces the Is_pValueChanged to return true and saves the record correctly.