Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: awagner am 24.04.08 - 15:22:36

Titel: Anhang im Lesemodus per Button einfügen
Beitrag von: awagner am 24.04.08 - 15:22:36
Hallo zusammen,

ich weiß, dass das Problem hier schon öfter diskutiert wurde, aber ich finde leider nichts passendes für mein Problem:

Öffnet ein User ein Dokument im Lesemodus, so soll er die Möglichkeit haben, über einen Button einen Anhang einfügen zu können. Der Benutzer hat aber keine Berechtigung dazu, das Dokument zu bearbeiten.

Kann mir jemand weiter helfen? Das wäre klasse ;-)

Gruß Andi
Titel: Re: Anhang im Lesemodus per Button einfügen
Beitrag von: m3 am 24.04.08 - 15:24:51
Wenn in der ACL nur Lesrechte, dann gehts nicht. Ansonsten musst Du mit Reader/Autor Feldern bzw. geschützten Abschnitten arbeiten.
Titel: Re: Anhang im Lesemodus per Button einfügen
Beitrag von: awagner am 24.04.08 - 15:26:28
in der ACL haben die User Author bzw. Editorrechte
Titel: Re: Anhang im Lesemodus per Button einfügen
Beitrag von: m3 am 24.04.08 - 15:28:03
Na dann passts eh.

Wie wäre es mit einer konkreten Frage?
Titel: Re: Anhang im Lesemodus per Button einfügen
Beitrag von: awagner am 24.04.08 - 16:11:18
sry...

also: mein problem ist, dass der user das dokument nicht bearbeiten kann, er aber einen anhang einfügen können soll!

ich hab mittlerweilen nach langem probieren auch was gefunden.

hier der code:

Code
Sub Click(Source As Button)
	Dim workspace As New NotesUIWorkspace
	Dim uidoc As NotesUIDocument
	Dim doc As NotesDocument
	Dim anhang As NotesRichTextItem
	Dim datei As Variant
	Dim strUNID As String
	Dim db As NotesDatabase 
	Dim pDoc As NotesDocument 
	Dim s As New NotesSession
	
	Set db = s.CurrentDatabase 
	Set uidoc = workspace.CurrentDocument
	Set doc = uidoc.Document
	Set Anhang = New NotesRichTextItem(doc, "gf_Anhang")
	
	datei = workspace.OpenFileDialog(False, "Datei auswaehlen")
	
	
	If Isempty(datei) Then Exit Sub   
	If anhang.type = 1 Then
		Call anhang.EmbedObject( EMBED_Attachment, "", datei(0))
		Call doc.Save( True, False )
		strUNID = uidoc.Document.iDocID( 0 )		
		
		Call uidoc.Close
		Set pDoc = db.GetDocumentByUNID( strUNID )
		workspace.EditDocument False, pDoc
	End If
End Sub
Titel: Re: Anhang im Lesemodus per Button einfügen
Beitrag von: koehlerbv am 24.04.08 - 16:18:59
Hä?

Also, wenn der obige Code - vor allem das NotesDocument.Save, funktioniert, dann kann der Benutzer das Dokument auch bearbeiten.

Du solltest vielleicht eine klarere Ausdrucksweise wählen: Autor / Editor und "nicht bearbeiten" oder NotesDocument.Save und "nicht bearbeiten" passt ungefähr so zusammen wie Feuer und Wasser ...

Bernhard

PS: Eine klar formulierte Frage ist der halbe Weg zur Lösung.
Titel: Re: Anhang im Lesemodus per Button einfügen
Beitrag von: awagner am 25.04.08 - 08:59:58
ich formuliere mein problem nochmal neu.

Es wird ein Antrag gestellt und ein Workflow gestartet.
Ist der Workflow dann in verschiedenen Ebenen durchgelaufen und immer genehmigt worden, wird er abgeschlossen.
Hat der Antrag dann den Status abgeschlossen, liegt er beim Mitarbeiter xy. Dieser soll den Antrag aber nicht mehr bearbeiten können, sondern nur lesen (weil bestimmte Infos gebraucht werden), aber in ein Richtext-Feld einen Anhang hinterlegen können.

Wird mein Problem jetzt deutlicher?

sry. für die vorherige, umständliche Ausdrucksweise...

Gruß Andi
Titel: Re: Anhang im Lesemodus per Button einfügen
Beitrag von: klaussal am 25.04.08 - 09:17:08
Nimm Abschnitte, die je nach Status bearbeitet werden können oder nicht.
Titel: Re: Anhang im Lesemodus per Button einfügen
Beitrag von: AC am 25.04.08 - 09:23:05
Wo verhinderst DU denn, dass die letzt genannte Person die zwar Schreibrechte haben muss, aber dann doch nicht das Dokument öffnen darf, dieses öffnen dann auch tut ?

Im Querrymodechange ?
Das muss da dann aber sauber auf die unterschiedlichen Personen aufgesplittet sein.
Oder öffnest Du mit einer anderen Maske wo da kategorisch ein continue = false drin ist?

ZU Deinem Problem.
Dein geposteter Code sieht doch nicht schlecht aus, wo ist das Problem ?
Ich habs jetzt nur kurz angeschaut.

Ich habe die zwei Zeilen mit
      'strUNID = uidoc.Document.iDocID( 0 )      
und
   'Set pDoc = db.GetDocumentByUNID( strUNID )

auskommentiert, dann sollte es doch funktionieren.

Wenn Dir das so quick and dirty reicht.
Oder übersehe ich was anderes ?

Gruß AC
Titel: Re: Anhang im Lesemodus per Button einfügen
Beitrag von: awagner am 25.04.08 - 11:08:23
das ein dokument nicht mehr bearbeitet werden kann, wird im querymodechange, je nach Rolle verhindert.

@AC: warum hast du die beiden Zeilen rausgenommen? Bei mir klappt es auch mit den beiden Zeilen?!

Ich werds mal weiter testen, aber mittlerweile schauts doch sehr gut aus.
Titel: Re: Anhang im Lesemodus per Button einfügen
Beitrag von: koehlerbv am 25.04.08 - 11:12:53
Im QueryModeChange? Na, dann stell Dich in einer Ansicht mal auf so ein "unbearbeitbares" Dokument und drücke Strg-B ...

Bernhard
Titel: Re: Anhang im Lesemodus per Button einfügen
Beitrag von: awagner am 25.04.08 - 11:25:49
ach du sch***

man lernt nie aus :(

und was kann man dann tun, das der user das dokument nicht bearbeiten kann?
Titel: Re: Anhang im Lesemodus per Button einfügen
Beitrag von: m3 am 25.04.08 - 11:29:26
Autorenfelder korrekt setzten.
Titel: Re: Anhang im Lesemodus per Button einfügen
Beitrag von: koehlerbv am 25.04.08 - 11:31:16
Daran geht nichts vorbei. Alle Versuche, sowas über Events zu machen, sind letztlich nur Krücken, die keine Sicherheit bieten.

Bernhard
Titel: Re: Anhang im Lesemodus per Button einfügen
Beitrag von: awagner am 25.04.08 - 11:40:23
okay... ich hab die autorenfelder jetzt eingebaut und somit sollte es jetzt auch funktionieren, den anhang einzufügen!

Danke für die Hilfe!

Grüße