alogrep 0 Posted 7 hours ago Hello. I am stuck with this very strange behavious. "Gelati" is not defineD anywhare in the App. Now If i have this code, IFNDEF it is entirely "broken". procedure clearalltables; var i: integer; {$IFNDEF GELATI} S: STRING; // not work here {$ENDIF} begin {$IFNDEF GELATI} with dm2, floorplantable do begin //not work here cancelrange; filter:='sta.......... Then if I change the code like this procedure clearalltables; var i: integer; {$IFDEF GELATI} S: STRING; // DIMMED. ifdef WORKS {$ENDIF} begin {$ifdef gelati} s:='???'; // DIMMED. ifdef WORKS {$endif} {$IFNDEF GELATI //Ifndef is IGNORED??? with dm2, floorplantable do begin cancelrange; filter:='status =''T'' or status=''S'''; filtered:=true; And hee even more incomprehensible procedure clearalltables1; var i: integer; {$IFDEF GELATI} S: STRING; // DIMMED {$ENDIF} begin {$ifdef gelati} s:='???'; //DIMMED {$eLSE} {$IFNDEF GELATI} //NEITHER {$ELSE} NOR {iFNDEF WORK ?????? with dm2, floorplantable do begin cancelrange; filter:='status ...' end; {$endif} {$endif} end; Share this post Link to post
corneliusdavid 249 Posted 6 hours ago 38 minutes ago, alogrep said: procedure clearalltables; var i: integer; {$IFDEF GELATI} S: STRING; // DIMMED. ifdef WORKS {$ENDIF} begin {$ifdef gelati} s:='???'; // DIMMED. ifdef WORKS {$endif} {$IFNDEF GELATI //Ifndef is IGNORED??? with dm2, floorplantable do begin Perhaps this was a re-type error but that line with "{$IFNDEF GELATI" is missing the closing curly brace: {$IFNDEF GELATI} // <-- need to close with } Otherwise, it's dimming/not-dimming as I would expect. If GELATI is not defined, then code in a "{$IFNDEF GELATI}" would execute and therefore not be dimmed--because {$IFNDEF} = if the symbol is NOT DEFINED. Share this post Link to post