Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - E2034 bei Verwendung von Delete (Stringbearbeitung)
OsCor - Do 26.01.12 11:12
Titel: E2034 bei Verwendung von Delete (Stringbearbeitung)
Hallo Foristen,
bei meinen ersten Gehversuchen in XE habe ich in folgendem Quelltext den Fehler E2034 erhalten (zu viele Parameter). Ich bin mir aber keiner Schuld bewußt.
In der Hilfe habe ich allerdings keinerlei Hinweise auf die Existenz dieser procedure gefunden. Kann es sein, dass es sie in XE gar nicht mehr gibt?
Delphi-Quelltext
1: 2: 3: 4: 5:
| … SP := Pos(S, Zeile); FieldByName('Bearbeiter').AsString := Copy(Zeile, 1, SP-1); Delete(Zeile, 1, SP); … |
Oswald
Tastaro - Do 26.01.12 11:50
Ich tippe, dass er sich auf ein anderes Delete bezieht. Z.B. auf eines aus der Klasse in der du die Prozedur aufrufst.
Probier mal
Delphi-Quelltext
1:
| system.Delete(Zeile, 1, SP); |
OsCor - Do 26.01.12 11:58
In der Zeile, in der ich das ausprobiert habe, wird der Fehler beim Kompilieren tatsächlich nicht mehr moniert. Aber ich habe noch nicht kapiert, was da passiert. Und da wäre ich sehr daran interessiert.
Oswald
P.S. Natürlich kann man die Delete-Prozedur durch eine entsprechende Zeile mit Copy ersetzen, aber ich habe in etlichen Anwendungen Delete in „größerem” Umfang eingesetzt. Bei einer Portierung stünde mir etliche Arbeit ins Haus.
Martok - Do 26.01.12 12:14
Und deswegen benutzt man kein
With (oder jedenfalls nur in sehr begrenzten Fällen): da passieren sehr seltsame Dinge, die man selten direkt überblickt :roll:
Ich nehme mal an, das sieht so aus?
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7:
| with SomeTable do begin ... SP := Pos(S, Zeile); FieldByName('Bearbeiter').AsString := Copy(Zeile, 1, SP-1); Delete(Zeile, 1, SP); ... end; |
Dann wird Delete auf SomeTable.Delete aufgelöst, und das hat keine Parameter.
OsCor - Do 26.01.12 12:26
Völlig richtig. Darauf hätte ich wirklich auch selber kommen können :oops:
Vielen Dank
Oswald
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!