Autor Beitrag
OsCor
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 55

Win XP, Win 7 (32)
Delphi 2007 Prof, RAD Studio XE2
BeitragVerfasst: Do 26.01.12 11:12 
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?

ausblenden 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
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 414
Erhaltene Danke: 23



BeitragVerfasst: 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
ausblenden Delphi-Quelltext
1:
system.Delete(Zeile, 1, SP);					
OsCor Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 55

Win XP, Win 7 (32)
Delphi 2007 Prof, RAD Studio XE2
BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 3661
Erhaltene Danke: 604

Win 8.1, Win 10 x64
Pascal: Lazarus Snapshot, Delphi 7,2007; PHP, JS: WebStorm
BeitragVerfasst: 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?
ausblenden 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.

_________________
"The phoenix's price isn't inevitable. It's not part of some deep balance built into the universe. It's just the parts of the game where you haven't figured out yet how to cheat."
OsCor Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 55

Win XP, Win 7 (32)
Delphi 2007 Prof, RAD Studio XE2
BeitragVerfasst: Do 26.01.12 12:26 
Völlig richtig. Darauf hätte ich wirklich auch selber kommen können :oops:

Vielen Dank
Oswald