Hallo,
ich habe eine Auftragsdokument, in dem mehrere Teilaufträge erfasst werden können. In den Teilaufträgen ist auch ein RTI um Dateien aufzunehmen.
Das mache ich mittels rti.EmbedObject(EMBED_ATTACHMENT,"",filepath)
Die Attachments befinden sich dann im Dokument immer in $FILE(:x).
EDIT: Im Elterndokument hat jeder Teilauftrag ein RTI (antrag_dat & cstr(i) -> i = Teilauftragsnummer), in das die Dateien angehangen werden können (per Button)
Zur Bearbeitung der Teilaufträge splitte ich diese in einzelne Dokumente per Agent auf, d.h. jeder Teilauftrag ergibt ein Dokument. Zuerst hole ich mir mittels CopyAllItems alle Items in das jeweils neue (Teilauftrag-)Dokument und lösche dann die nicht benötigten Felder aus den Teilaufträgen heraus.
Nun sind hier auch alle $File-Items enthalten. Das hat den unschönen Effekt, dass die Dateien die in den anderen Teilaufträgen liegen am Ende des Dokuments angezeigt werden.
Idee war nun, dass ich die $File-Items abklappere, dann mit dem RTI des Teilauftrags abgleiche (Dateiname) und wenn im RTI dieser Dateiname nicht auftaucht, dann soll das $File-Item gelöscht werden.
Wie komme ich aber an den Dateinamen im $File-Item?
Ergibt aber das Problem, was passiert, wenn im Elterndokument in mehreren Teilaufträgen eine Datei mit gleichem Dateinamen abgespeichert wird? Gibt es eine Möglichkeit die Beziehung zwischen RTI und dem $FILE-Item abzuleiten?
Bin um jeden Input dankbar.
EDIT2: Ich glaube ich denke wieder zu kompliziert. Eigentlich sollte ich doch alle Felder bis auf die RTIs kopieren, dann aus dem Elterndokument die Attachments auf Platte lösen und den entsprechenden Teilauftragsdokumenten wieder anfügen ...
Bye
Markus