Page 1 of 1
Property or indexer '__Usual.Value' cannot be assigned to -- it is read only
Posted: Wed Nov 09, 2016 9:01 am
by ArneOrtlinghaus
The following statement with an untyped variable gives the error above
function ControlSetNullValue (oControl , oDB )
..
oControl:Value := false
It seems that the access Value has a special meaning for usuals. Unfortunately it gives conflicts with the control class of the GUI classes.
Property or indexer '__Usual.Value' cannot be assigned to -- it is read only
Posted: Wed Nov 09, 2016 9:37 am
by Chris
Hi Arne,
That was fixed about a week ago
Chris
Property or indexer '__Usual.Value' cannot be assigned to -- it is read only
Posted: Wed Nov 09, 2016 8:55 pm
by robert
Arne,
The problem here was that the Usual structure also has a (read only) Value property.
This property returns the contents of the Usual (as an object).
Robert
Property or indexer '__Usual.Value' cannot be assigned to -- it is read only
Posted: Thu Nov 10, 2016 10:09 am
by Frank Maraite
The fastest fix is
function ControlSetNullValue (guiControl AS Control , db AS ??? ) AS VOID
guiControl:Value := false
I would do this immediatly after reporting the bug, you know.
Property or indexer '__Usual.Value' cannot be assigned to -- it is read only
Posted: Thu Nov 10, 2016 10:15 am
by ArneOrtlinghaus
Hi Frank,
thank you for the idea.
Unfortunately there are many untyped functions existing and I cannot change them in a simple way. Often the functions are called with different parameters and with different number of parameters, and this not hardcoded to be able to find compiling, but also in macros at customer sites.
Property or indexer '__Usual.Value' cannot be assigned to -- it is read only
Posted: Thu Nov 10, 2016 3:35 pm
by Frank Maraite
just start doing it whenever you stumble over an issue like this. And of course whenever you see an untyped function/method. Even the longest way starts with the first step.
Permanent refactoring things like this takes an important amount of time in my work since the early 90ies.