![]() |
String prüfen durch eine if anweisung und dann kopieren
so geht es nicht !
Delphi-Quellcode:
ohne eine if anweisung geht es!
procedure TForm1.AdvGlowButton6Click(Sender: TObject);
var s, d, e : String; begin //MessageDlg('Einsatznummer Leitstelle'+#10#13+'wirklich ändern ?', mtConfirmation, mbYesNo, 0) = mrYes then begin if (s = MyTable2.FieldByName('Meldung').Text) and (d = '**') then begin MyTable2.Edit; s := MyTable2.FieldByName('Meldung').Text; d := '**'; Delete(s, 1, Pos(d, s) - 1 + Length(d)); while Pos(#10, s) > 0 do Delete(s, Pos(#10, s), 1); while Pos(#13, s) > 0 do Delete(s, Pos(#13, s), 1); s := Trim(s); MyTable2.FieldByName('E.-Nr:').Text := Copy(MyTable2.FieldByName('Meldung').Text, Length (MyTable2.FieldByName('Meldung').Text+(s))-9, 10)+(s); MyTable2.Post; DBedit1.ReadOnly:=false; end else begin if d = '*' then begin MyTable2.Edit; s := MyTable2.FieldByName('Meldung').Text; d := '*'; Delete(s, 1, Pos(d, s) - 1 + Length(d)); while Pos(#10, s) > 0 do Delete(s, Pos(#10, s), 1); while Pos(#13, s) > 0 do Delete(s, Pos(#13, s), 1); s := Trim(s); MyTable2.FieldByName('E.-Nr:').Text := Copy(MyTable2.FieldByName('Meldung').Text, Length (MyTable2.FieldByName('Meldung').Text+(s))-9, 10)+(s); MyTable2.Post; DBedit1.ReadOnly:=false; end; end; end;
Delphi-Quellcode:
was muss ich ändern?
MyTable2.Edit;
s := MyTable2.FieldByName('Meldung').Text; d := '**'; Delete(s, 1, Pos(d, s) - 1 + Length(d)); while Pos(#10, s) > 0 do Delete(s, Pos(#10, s), 1); while Pos(#13, s) > 0 do Delete(s, Pos(#13, s), 1); s := Trim(s); MyTable2.FieldByName('E.-Nr:').Text := Copy(MyTable2.FieldByName('Meldung').Text, Length (MyTable2.FieldByName('Meldung').Text+(s))-9, 10)+(s); MyTable2.Post; DBedit1.ReadOnly:=false; |
AW: String prüfen durch eine if anweisung und dann kopieren
Welchen Wert hat denn s, wenn Du ihn vergleichst? Ich kann da nirgends eine Zuweisung erkennen.
[edit] Das könnte man auch schön mit dem Debugger prüfen, das Ding ist kein Hexenwerk, das darf man ruhig benutzen. [/edit] |
AW: String prüfen durch eine if anweisung und dann kopieren
Zitat:
|
AW: String prüfen durch eine if anweisung und dann kopieren
Delphi-Quellcode:
S:=
D:= if (s = MyTable2.FieldByName('Meldung').Text) and (d = '**') then begin ShowMessage(S + sLineBreak + D); .. |
AW: String prüfen durch eine if anweisung und dann kopieren
Also hier ein Beispiel 1 für das Feld 'Meldung'!
Feuerwehr Einsatz * Testhausen * Testdorfstrasse 15 **12346789 Beispiel 2 für das Feld 'Meldung' ! Feuerwehr Einsatz * Testhausen * Testdorfstrasse 15 * bei Meier *12346789 Ich möchte einfach nur die Einsatznummer 123456789 übernehmen!
Delphi-Quellcode:
So geht es mit '**' aber es soll auch bei einem '*' gehen!
procedure TForm1.AdvGlowButton6Click(Sender: TObject);
var s, d: String; begin MyTable2.Edit; s := MyTable2.FieldByName('Meldung').Text; d := '**'; Delete(s, 1, Pos(d, s) - 1 + Length(d)); while Pos(#10, s) > 0 do Delete(s, Pos(#10, s), 1); while Pos(#13, s) > 0 do Delete(s, Pos(#13, s), 1); s := Trim(s); MyTable2.FieldByName('E.-Nr:').Text := Copy(MyTable2.FieldByName('Meldung').Text, Length (MyTable2.FieldByName('Meldung').Text+(s))-9, 10)+(s); MyTable2.Post; DBedit1.ReadOnly:=false; Also eine if Anweisung oder? |
AW: String prüfen durch eine if anweisung und dann kopieren
Warum so kompliziert?
Was soll das Löschen von '**' wenn es gar nicht Teil des Stringes ist? Warum While-Schleifen um Zeichen zu Ersetzen, welche nicht Teil des Strings sind? Warum trennst du den String nicht anhand vorhandener Delimitern? |
AW: String prüfen durch eine if anweisung und dann kopieren
while pos('*',s) do ......
oder gleich von hinter reinlaufen .... |
AW: String prüfen durch eine if anweisung und dann kopieren
Wäre es nicht besser, die DB zu normalisieren anstatt hier wilde Stringoperationen durchzuführen? Für mich sieht das so aus, als würden mehrere Werte in einem Feld gespeichert, das verletzt die 1. Normalform.
|
AW: String prüfen durch eine if anweisung und dann kopieren
Er weiss sicherlich überhaput nicht, wovon wir Reden, und noch Schlimmer, er scheint ihn auch nicht zu Jucken!
In seinem diversen Fragen hat man ihm viele Fehler verbessert, Verbesserungsvorschläge gemacht und Tipps gegeben. Aber er hat keinen der Verbesserungsvorschläge umgesetzt noch beherzigt er unsere Tipps! Im fehlt Grundlagenwissen in sämtlichen Bereichen und er sieht auch keinen Sinn darin, sich dieses notwendige Wissen zu beschaffen! |
AW: String prüfen durch eine if anweisung und dann kopieren
herr mkinzler, wieso haben sie eigentlich immer so eine negative einstellung?
natürlich versuche ich alles zu verstehen! nehme auch eure vorschläge an! aber geben sie mir die zeit , diese dinge umzusetzen, zu testen und natürlich zu verstehen! kann nicht immer sofort antworten! dann teste ich gerade was! danke |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:03 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz