Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Delphi Wildcard ? gibts sowas ? (https://www.delphipraxis.net/17182-delphi-wildcard-gibts-sowas.html)

Manu-ela 29. Feb 2004 16:55


Delphi Wildcard ? gibts sowas ?
 
Hallo liebe DP-Gemeinde.

Ich hätte mal ein Frage:

"Gibt es in Delphi eine Art Wildcard, wie z.B. LIKE in SQL ?"

Ich habe nämlich folgendes Problem:
Aus einer DB (juhu, es funktioniert endlich, danke nochmal an sukura :thuimb: ) bekomme ich u.a. die Personalnummer geliefert.
Diese muss ich dann weitergeben und weiterverarbeiten. Sie ist ein string und mus auch als String weiter gegeben werden.
Das Problem ist, dass sie auf 2 verschiedene Arten und Weisen verarbeitet werden müssen. Und das hängt von der Struktur dieser ab.
Strukturen der PersonalNummern:
1. Möglichkeit: '12345/6789'
2. Möglichkeit: '54321/9876'

Wenn Struktur 1 vorliegt, muss sie nach Methode 1 verarbeitet werden.
Wenn Struktur 2 vorliegt, muss sie nach Methode 2 verarbeitet werden.

Nun wäre es natürlich am einfachsten, wenn ich sowas wie LIKE und dann eine WildCard nutzen könnte.

Also soetwas hier:
Delphi-Quellcode:
Procedure TForm1.verarbeiten(Sender: TObject);
Begin
  if PeronalNummer LIKE 12345/% then
    weiterverarbeiten1(Personalnummer)
  else
    if PeronalNummer LIKE 54321/% then
      weiterverarbeiten2(Personalnummer)
    else
      Showmessage('Weiterverarbeitung der Personalnummer nicht moeglich, da sie eine falsche Struktur aufweist.');
end;
Könnte mir wohl jemand dabei helfen dieses Problem zu lösen, oder sagen, ob es eine solche Like Funktion mit Wildcard gibt?

Das wäre sehr nett, wenn ihr mir dabei helfen könntet.

MfG manu

fkerber 29. Feb 2004 16:58

Re: Delphi Wildcard ? gibts sowas ?
 
HI!

Wie greifst du denn auf die DB zu?
Vielleicht kannst du es ja schon beim Zugriff regeln?

Ciao fkerber

r_kerber 29. Feb 2004 17:02

Re: Delphi Wildcard ? gibts sowas ?
 
Hallo Manu-ela,

versuche es doch mal mit der Funktion Pos.
Delphi-Quellcode:
if Pos ('54321',PeronalNummer) > 0 then
      weiterverarbeiten2(Personalnummer);

Manu-ela 29. Feb 2004 17:05

Re: Delphi Wildcard ? gibts sowas ?
 
Hallo,

es ist ne blöde Access DB und ich greife über die ADOConnection drauf zu.
Ausgegeben wird es dann in einem DBGrid.
Per ButtonClick wird dann der markierte Datensatz weiterverarbeitet.

Hoffe, dass das alles war, was man wissen muss.

Nikolas 29. Feb 2004 17:06

Re: Delphi Wildcard ? gibts sowas ?
 
Du kannst es mit copy machen:
Ließ die ersten 5 Zeichen und vergleich sie dann mit den Vorlagen

Delphi-Quellcode:
astring:=copy(personalnummer,0,5);

if astring='12345' then
...

if astring='54321' then
...
Toxman

r_kerber 29. Feb 2004 17:07

Re: Delphi Wildcard ? gibts sowas ?
 
Zitat:

Zitat von Manu-ela
es ist ne blöde Access DB und ich greife über die ADOConnection drauf zu.

Ist zwar blöd, kann aber trotzdem 'ne Menge.

Manu-ela 29. Feb 2004 17:14

Re: Delphi Wildcard ? gibts sowas ?
 
Super Jungs, Danke erstmal für diese Superfixen und kompetenten Antworten.
Ich habe die DB leider nur auf der Arbeit und muss morgen direkt auf einen Lehrgang.
Habe nicht mit so einer schnellen und prompten Bedienung gerechnet.

Musste die Frage aber jetzt schon stellen, weil sie mich das ganze Wochenende schon plagt :wall:

Sobald ich wieder an die DB am Dienstag komme, werde ich es sofort ausprobieren :bouncing4:


Zitat:

Zitat von r_kerber
Zitat:

Zitat von Manu-ela
es ist ne blöde Access DB und ich greife über die ADOConnection drauf zu.

Ist zwar blöd, kann aber trotzdem 'ne Menge.

Hast recht, hätte es aber lieber auf ner ganz normalen SQL DB. Aber so ist es auch ok :wink:


Danke nochmal Jungs, und nen schönen Sonntag noch.


MfG manu

Pseudemys Nelsoni 29. Feb 2004 17:25

Re: Delphi Wildcard ? gibts sowas ?
 
hallo Manuela,

binde mal die Unit "Masks" ein und benutz due Funktion "MatchesMask", also ca so:

Delphi-Quellcode:
if MatchesMask(dein string, '54321/*') then
  blub;

Edit: hab glaube ic was falsch verstanden :mrgreen:

Manu-ela 2. Mär 2004 14:53

Re: Delphi Wildcard ? gibts sowas ?
 
Juhu, danke Jungs.

Habs nun mit

Delphi-Quellcode:
astring:=copy(personalnummer,0,5);

if astring='12345' then
gemacht und es funktioniert einwandfrei.

Das nächste Problem ist nun aber aufgetreten :gruebel:

Mein Chef kommt mir immer wieder mit neuen Ideen, die er hat :wall:
und ich bin doch eigentlich nicht als Programmiererin hier eingestellt :gruebel:

Ich muss nun nämlich die Personalnummer in einer weiteren Funktion weiterverarbeiten.
Dabei muss ich aber den / aus der Nummer raus kriegen, um sie dann weiterzugeben.

Also, sie kommt so an: '12345/6789'

und soll so weitergegeben werden : '123456789'

Könnt ihr mir dabei noch einmal helfen ? Ist auch das letzte mal *liebguck*

Er hat mir schon gesagt, dass es das letzte Programm ist, was ich schrieben muss.

kiar 2. Mär 2004 17:00

Re: Delphi Wildcard ? gibts sowas ?
 
vielleicht so
Delphi-Quellcode:
var s:string;
begin
  s:='12345/678';
  delete(s,6,1);
end;
raik


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:56 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz