Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Aus dem DBMemo die letzten 10 Zeichen in ein DBEdit kopieren (https://www.delphipraxis.net/170345-aus-dem-dbmemo-die-letzten-10-zeichen-ein-dbedit-kopieren.html)

Alterauge 12. Sep 2012 14:19

Datenbank: MySQL • Version: 5.5 • Zugriff über: MyConnection

Aus dem DBMemo die letzten 10 Zeichen in ein DBEdit kopieren
 
Hallo,

wie kann ich (über einen Button) immer die letzten 10 Zeichen (sind nur Zahlen)in
ein DBEdit kopieren?

Egal wieviel im DBMemo steht! Es geht nur um die letzten 10 Zeichen!

Hat einer eine Idee ?

Gruß

p80286 12. Sep 2012 14:24

AW: Aus dem DBMemo die letzten 10 Zeichen in ein DBEdit kopieren
 
Delphi-Quellcode:
edit1.Text:=copy(memo1.Lines.text,length(memo1.Lines.text)-10,10);
so aus der hohlen Hand...
wenn das Memo weniger als 10 Zeichen hat, könnte es schief gehen.....


Gruß
K-H

Sir Rufo 12. Sep 2012 14:26

AW: Aus dem DBMemo die letzten 10 Zeichen in ein DBEdit kopieren
 
Was hat das denn schon wieder mit Datenbanken im Speziellen zu schaffen?

Du hast da einen String (völlig unerheblich wo du den herbekommst ... schaff den einfach ran)
Von diesem String möchtest du die letzten 10 Zeichen haben (wohin auch immer die sollen ... pack sie einfach dahin)

Also benötigst du eine Funktion, die einen String aufnimmt und einen String zurück liefert:
Delphi-Quellcode:
function CutOffLastTenChars( const Str : string ) : string;
Und weil das so banal ist, gibt es eine Unit Delphi-Referenz durchsuchenStrUtils mit der Funktion Delphi-Referenz durchsuchenRightStr

In deinem Code würde das dann wohl wie folgt aussehen:
Delphi-Quellcode:
aDBEdit.Text := RightStr( aDBMemo.Text, 10 );

mkinzler 12. Sep 2012 14:26

AW: Aus dem DBMemo die letzten 10 Zeichen in ein DBEdit kopieren
 
Auch in diesem Fall gilt, hole die daten direkt aus dem Datenbankfeld und nicht aus der Anzeigekomponente!


Delphi-Quellcode:
<ZielStr> := Copy(<QuellStr>, Length(<QuellStr>)-9, 10);

Alterauge 12. Sep 2012 14:29

AW: Aus dem DBMemo die letzten 10 Zeichen in ein DBEdit kopieren
 
Danke es geht!
Delphi-Quellcode:
DBEdit9.Text := Copy(DBMemo3.Text, Length(DBMemo3.Text)-9, 10);
Es sind immer mehr als 10 Zeichen!
Danke!

Jonas Shinaniganz 12. Sep 2012 14:45

AW: Aus dem DBMemo die letzten 10 Zeichen in ein DBEdit kopieren
 
Ein Tipp von mir als Anfänger, nimm dir wirklich zu Herzen, was Sir Rufo und mkinzler sagen.

Und versuche für dich selbst zu begründen, warum du so eine Opperation durchführen musst. Es mag vielleicht in diesem Fall Gründe geben so vorzugehen.

Aber Ich stelle mal die These auf, dass du bei einem durchdachten Konzept keine letzten 10 Zeichen irgendwo "rausklauben" musst.

Grüße ;)

p80286 12. Sep 2012 14:57

AW: Aus dem DBMemo die letzten 10 Zeichen in ein DBEdit kopieren
 
@Jonas
Ich kenne einige Datenlieferanten, bei denen sich am Ende eines Referates eine DokumentNummer/Seriennummer befindet, die es sonst nirgendwo (innerhalb des Datensatzes) gibt.
Nur ist es in einer Vielzahl von Datensätzen so, das auf die "letzten 10 Zeichen" kein Verlass ist.

Gruß
K-H


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:18 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