8. Mai 2015 09:54
Fields.SETRANGE(TableNo, _TableNo);
IF Fields.FINDSET THEN BEGIN
cnt := 1;
REPEAT
IF Fields.TableNo = _TableNo THEN BEGIN // Workaround, da der SETRANGE-Befehl auf Tabelle Field nicht greift
RetVal := RetVal + '[%' + FORMAT(cnt) +'], ';
cnt += 1;
END;
UNTIL Fields.NEXT = 0;
RetVal := COPYSTR(RetVal, 1, STRLEN(RetVal)-2);
RetVal := RetVal + ')';
END;
8. Mai 2015 09:59
rotsch hat geschrieben:Erst als die Tabelle neue Felder bekam, trat dieser Effekt auf.
8. Mai 2015 10:03
Natalie hat geschrieben:Was meinst du damit? Welche Tabelle, was für neue Felder?
8. Mai 2015 10:34
RecRef.Open(3); // Payment Terms
for i:= 1 to RecRef.FieldCount do begin
if txt <>'' then
txt +=', ';
Txt +=Strsubstno('[%%1]',i);
end;
Message(txt);
RecRef.Open(3);
for i:= 1 to RecRef.FieldCount do begin
if txt <>'' then
txt +=', \';
// Txt +='['+RecRef.FIELDINDEX(i).Name+']';
Txt +='['+RecRef.FIELDINDEX(i).Caption+']';
end;
Message(txt);
8. Mai 2015 11:10
fiddi hat geschrieben:das kannst du aber auch ein wenig einfacher haben
8. Mai 2015 11:17
Das Problem mit dem Filter auf Tabelle Field ist damit nicht gelöst, aber so habe ich eine gute Alternative.