Das Notes Forum
Domino 9 und frühere Versionen => ND7: Entwicklung => Thema gestartet von: Lancelot am 06.11.08 - 08:54:16
-
Hi Leute,
ich habe in einer Ansicht einen Knopf eingebaut, der Dokumente kopieren kann.
Dort werden Felder beim kopieren und einfügen Felder geleert, und einige nicht.
Z.B. das Statusfeld wird geleert.
Laut Anweisung dürfen dort auch nur so Dokumente kopiert werden.
Doch manche User begreifen es einfach nicht und verwenden "Strg + C"
Kann ich das kopieren mit dieser Standardfunktion verhindern?
Ich denk mal wahrscheinlich nicht, aber sicher bin ich mir da nicht.
-
Guten Morgen,
Du kannst zumindest im QueryPaste - Event der Ansicht mit "continue=false" das einfügen mittels
STRG+V verhindern, vielleicht reicht ja das schon aus?
Grüße Tim
-
Hallo,
oder Du gehst gleich auf das Datenbank-Script (Datenbankresourcen)
Gruß Werner
-
Danke Cube , danke Werner.
Die Methode mit dem "QueryPaste" und "continue=false" würde mir reichen,
aber dann ist das Einfügen über den Knopf der ja kopieren darf auch nicht mehr richtig gegeben.
Die Funktion des Knopfes muß erhalten bleiben nur das kopieren ohne den Knopf sollte nicht mehr möglich sein.
Es sieht so aus als würden mir die alten Dokumente überschrieben.
Sobald ich die Zeile "continue=false" entferne klappt es wieder.
-
Wird die DB denn repliziert? Wenn nicht, könntest du in der ACL das Häkchen bei Dokumente replizieren und kopieren rausnehmen, und den Kopiervorgang in dem Knopf über einen Serveragenten lösen.
Gruß
Demian
-
Vielleicht kannst du auch überlegen, statt deines Knopfs einen generellen Agenten zu schreiben, der auf das Ereignis BEIM EINFÜGEN VON DOKUMENTEN reagiert. Du mußt dabei halt nur an JEDE mögliche Dokumentart denken. Als Beispiel:
@If(@Left(form;1)="9";@Return("");NULL);
FIELD _ViewIcon:=120;
FIELD DispIcon1:=120;
FIELD DokLink:=@DeleteField;
FIELD DokLink:=@DocumentUniqueID;
Srv := @Name([Abbreviate];@Subset(@DbName;1));
SrvA:="";
Db := @If(@Version>"189";@Left(@ReplicaID;8)+@Right(@ReplicaID;8);@Subset(@DbName;-1));
Vw := "($Default)";
DocId := @Text(@DocumentUniqueID);
FIELD nURL:="notes://"+@ReplaceSubstring(SrvA;"\\";"/")+"/"+@ReplaceSubstring(Db;"\\";"/")+"/"+Vw+"/"+DocId;
@If(@GetProfileField("98SG";"SetupDBIstArchiv")="1";@Return("");NULL);
@If(@GetProfileField("98SG";"SetupDBIstLoeschDB")="1";@Return("");NULL);
FIELD OrigUNID:=@DeleteField;
FIELD OrigRef:=@DeleteField;
FIELD LoeschKenn:=@DeleteField;
FIELD Loescher:=@DeleteField;
xMonate:=@If(@IsAvailable(Erstellmaske);@If(@IsNumber(@GetProfileField("98SG";"Setup_Arc"+Erstellmaske));@GetProfileField("98SG";"Setup_Arc"+Erstellmaske);60);60);
Ablauf:=@Adjust(@Today;0;xMonate;0;0;0;0);
NeuerAblauf:=@If(@IsAvailable(DueDate);@If(@IsTime(DueDate);@If(DueDate>Ablauf;DueDate;Ablauf);Ablauf);Ablauf);
FIELD DueDate:=@If(@IsAvailable(DueDate);@If(DueDate="";"";NeuerAblauf);NeuerAblauf);
FIELD ArcThread:=@DeleteField;
...