Das bekommst du mit execute immediate hin:

Code:
/free
  varFeldName = 'SaNr';
  varFeldWert = SaNr;
  varSQLStatement = 'SELECT SaName From SATEP01 Where ' + varFeldName + ' = ' + varFeldWert;
/end-free

c/exec sql                        
c+ Execute immediate :varSQLStatement
C/end-exec
bei Deklaration von Cursor:
Code:
/free
  varFeldName = 'SaNr';
  varFeldWert = SaNr;
  varSQLStatement = 'SELECT SaName From SATEP01 Where ' + varFeldName + ' = ' + varFeldWert;
/end-free

C/exec sql                       
C+ prepare s1 FROM :varSQLStatement
c/end-exec                       
                                 
                                 
C/exec sql                       
C+ declare c01 cursor for s1     
c/end-exec