Ich hab jetzt folgendes probiert:
wenn ich myPos.myApos durch 'Null' ersetze findet er den Datensatz!
Delphi-Quellcode:
if DM1.PosQuery.Locate('POSNR;APOS', VarArrayOf([myPos.MyPos,NULL]),[]) then
...
Wie bekomm ich den Wert Null in meiner Prozedur?
Delphi-Quellcode:
procedure SplitPosNummer(PosNr: string; var mypos: TMyPosNummer);
var i: integer;
c: Char;
s: string;
begin
s := PosNr;
if (s[Length(s)] in ['a'..'z']) then
begin
// Letztes Zeichen ist ein Buchstabe
c := s[Length(s)];
i := strtoint(LeftStr(s, length(s) - 1));
end
else
begin
i := strtoint(s);
c := NULL; // !!!!!!!!!!!!!!!!! Da meckert der Compiler !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
end;
mypos.myPOS := i;
mypos.myAPOS := c;
end;