30. Dezember 2009 04:52
Hallo 42,
vielen Dank für den Tip. Musste mit deinem Tip noch etwas recherchieren. Meine Codeunit sieht nun folgendermaßen aus:
- Code:
Root := USERID;
ofile.CREATE(FileDialog.OpenFile('Dateipfad....',Root,4,'.xml' + '|*' + '.xml',2));
ofile.CREATEOUTSTREAM(ostream);
XMLPORT.EXPORT(123456780,ostream);
ofile.CLOSE;
MESSAGE('XML-Port erfolgreich');
Funktioniert wunderbar. Vielen Dank.
Hab jetzt aber noch ein weiteres Problem. Ich möchte nur einen bestimmten Datensatz aus der Tabelle exportieren. Exportiert werden soll nur der Datensatz, dessen ID mit dem Anmeldenamen übereinstimmt. Die systemweite Variable dafür ist die USERID. Ich kann die USERID auch in einem Trigger des XMLPORT aufrufen und testweise über eine Messagebox ausgeben. Funktioniert einwandfrei. Nur jeglicher Versuch einen Filter zu setzten auf diese USERID funktioniert nicht. Nicht im Trigger, nicht in den Properties (SourceTableView). In den Proberties funktioniert es nur, wenn ich z.B. folgenden Code dort von Hand eingebe:
- Code:
WHERE(User ID=CONST(SUPER))
Super ist eine definierte Rolle / User ID. Wenn ich SUPER durch die Variable USERID ersetze, wird kein Datensatz ausgelesen.
Wie kann man denn nun in einem XMLPort (Export) einen vernünftigen Filter setzten, den ich nicht von Hand jedesmal eingeben muss, sondern davon abhängt, welcher User sich jeweils am Client anmeldet?
Gibt es da eine Möglichkeit? Wäre schön, wenn du mir da auch helfen könntest.
Vielen Dank
Manfred