Function DE Version 4.50

@CopyAttachment

Attachments Note

Syntax

@CopyAttachment(DBHANDLE1;DBHANDLE2;NOTEHANDLE3;NOTEHANDLE4;FN5);
@CopyAttachment(DBHANDLE1;DBHANDLE2;NOTEHANDLE3;NOTEHANDLE4;FNLIST5);
@CopyAttachment(DBHANDLE1;DBHANDLE2;NOTEHANDLE3;NOTEHANDLE4;TEXT5);
@CopyAttachment(DBHANDLE1;DBHANDLE2;NOTEHANDLE3;NOTEHANDLE4;TEXTLIST5);
@CopyAttachment(DBHANDLE1;DBHANDLE2;NOTEHANDLE3;NOTEHANDLE4;FN5;TEXT6);

Beschreibung

Kopiert Attachments aus dem geöffneten Dokument mit dem NOTEHANDLE NOTEHANDLE3 der Datenbank DBHANDLE DBHANDLE1 in das ebenfalls geöffnete Dokument NOTEHANDLE NOTEHANDLE4 der Datenbank DBHANDLE DBHANDLE2, ohne Überschneidungen von Dateinamen zu beachten oder Namensänderungen zu erlauben. Daher ist diese Funktion nicht zum Zusammenfügen von mehreren Attachments aus unterschiedlichen Dokumenten zu gebrauchen!

Durch FN4/FNLIST5/TEXT5/TEXTLIST5 können die zu kopierenden Attachments durch ihre Position bzw. ihren Namen eingeschränkt werden.

Rückgabewert der Funktion ist ein NUMBERLIST in der für jedes erfolgreich kopierte Attachment eine 1 gesetzt ist und für jede Fehlerpostion eine 0.

Beispiel: @CopyAttachment(DBHANDLE1;DBHANDLE2;NOTEHANDLE3;NOTEHANDLE4;TEXTLIST5);

ID:=8838;

dbh1:=@OpenDb("TEST.NSF");
noteh1:=@OpenNoteByID(dbh1;ID;noteh1);

names:=@AttachmentNames(noteh1);
orgnames:=@AttachmentInfo(noteh1;"FN");

noteh2:=@CreateNote(dbh1;noteh2);
Form[noteh2]:=Form[noteh1];

Ret:=@CopyAttachment(dbh1;dbh1;noteh1;noteh2;names);

STYLE1:=0:1:10:0:9;
STYLE2:=0:1:10:0:8;
RT[noteh2]:=@RTInit;
RT[noteh2]:=@RTAddText("File List Start"+@Newline;STYLE1;RT[noteh2]);
n2:=1;
n2e:=@Elements(names);
while(n2<=n2e)
{
   TEXT1:=@GetListElement(names;n2);
   TEXT2:=@GetListElement(orgnames;n2);
   RT[noteh2]:=@RTAddText(" File "+TEXT1+" -> ";STYLE2;RT[noteh2]);
   RT[noteh2]:=@RTAddFileIcon(TEXT1;TEXT2;"AnzeigeText:"+TEXT2;RT[noteh2]);
   RT[noteh2]:=@RTAddText(" <- "+@Newline;STYLE2;RT[noteh2]);
   @Increment(n2);
}
RT[noteh2]:=@RTAddText("File List End"+@Newline;STYLE1;RT[noteh2]);

noteh2:=@CloseNote(noteh2;1);
noteh1:=@CloseNote(noteh1;0);

dbh1:=@CloseDb(dbh1);

Es wird das Dokument, mit der NoteID 8838 (ist nur ein Beispiel-Wert) in der Datenbank mit dem Namen "TEST.NSF" geöffnet.
Anschließend wird ein neues Dokument in dieser Datenbank erstellt und die Dateianhänge des ersten Dokuments in das neue Dokument kopiert.
Die Form des neuen Dokuments wird ebenfalls von ersten Dokument übernommen.
Im Feld RT des neuen Dokuments wird eine Liste mit den angehängten Dateien erstellt, wobei auch die File-Icons als Referenzen integriert werden.