Hallo Stephan,
wenn du dem Compiler deinen ShortString als AnsiString verkaufst, könnte es funktionieren:
Delphi-Quellcode:
'anzahl8, anzahl9, anzahl10, anzahl11, anzahl12, anzahl13, anzahl4) VALUES '+
// '('''+KundenObjData.MandantenId+''','+
'('''+string(KundenObjData.MandantenId)+''','+
''''+KundenObjData.ObjNr+''','+
Ich kann nur vermuten, daß der Compiler hier Code für die Addition zweier ShortStrings durchführen möchte, und dafür ist die zusammengesetzte Stringkonstante wirklich zu lang. Ein ähnliches Verhalten findet man bei arithmetischen Operationen. Sie werden immer mit dem kleinstmöglichen gemeinsamen Datentyp durchgeführt - es sein denn, man führt einen expliziten TypeCast eines Operanden durch.
Gruß Hawkeye