Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: ell5lle am 30.03.06 - 14:05:07

Titel: Script - Dokument verschieben
Beitrag von: ell5lle am 30.03.06 - 14:05:07

Hallo!
Ich verwende dieses Aufruf in einem umfangreicheren Script um das bearbeitet Dokument weg aus der Inbox in einen Ordner (Abgeschlossen) zu verschieben.
   Call doc.PutInFolder("Abgeschlossen")
Zuvor versuchte ich es schon mit diesem Befehl:
   Call ws.Folder( "Abgeschlossen" )
In beiden Fällen wird auch ein "Link" dieser Mail in dem Ordner erstellt - leider aber nicht verschoben!   ???
Mein Ziel ist, dass in der Inbox diese mail nicht mehr auftaucht sondern nur im Abgeschlossen Ordner.
Beispielsweise anhand eines Feldes identifiziert und verschoben.

Ich hänge an dieser Stelle leider etwas ...   :-:

Vielen Dank für die Hilfe!  Wie gesagt benötige ich Script - da ich es an einer bestimmten Stelle einer Abfolge einpflegen muss...
Titel: Re: Script - Dokument verschieben
Beitrag von: DevDev am 30.03.06 - 14:23:02
Also das funktioniert bei mir ganz prächtig....

Code
	Set tmpDoc = doc.CopyToDatabase(db2)
	Call tmpDoc.PutInFolder("($Inbox)",False)
	Call tmpDoc.Save(True,False)	
   

Kopiert das gewünschte Dokument in den gewünschten Ordner.

Allerdings bekomme ich es nicht hin das ursprüngliche Dokument zu löschen.
Da hänge ich etwas. Vielleicht weiss da ja gerade jemand.

HTH
Titel: Re: Script - Dokument verschieben
Beitrag von: koehlerbv am 30.03.06 - 14:23:22
Du brauchst noch ein abschliessendes RemoveFromFolder.

Bernhard
Titel: Re: Script - Dokument verschieben
Beitrag von: DevDev am 30.03.06 - 14:36:54
Hier werden Sie schnell geholfen.

Allerdings bin ich dann über die WS.Folder Methode gestolpert.
Die kann dann mein Dokument verschieben.  Bei dem RemoveFolder
hätte ich das Problem gehabt, nicht zu wissen in welchem Ordner ich gerade
bin. Was aber mit Sicherheit auch kein grosser Akt ist, um das rauszubekommen.
Man muss einfach nur mal drüber reden.

Code
'in andere Mail DB kopieren	
Set tmpDoc = doc.CopyToDatabase(db2)
Call tmpDoc.PutInFolder("($Inbox)",False)
Call tmpDoc.Save(True,False)		

'anschliessend in MailDB intern verschieben	
WS.Folder "Verteilt", True
Also ich für meinen Teil wäre dann mit der Frage durch....  :P

Vielen Dank!

Gruss

[OFFTOPIC]
Gibts hier eigentlich einen "neue User stellen sich vor" Bereich?
[/OFFTOPIC]
Titel: Re: Script - Dokument verschieben
Beitrag von: Axel am 30.03.06 - 14:49:09
Allerdings bekomme ich es nicht hin das ursprüngliche Dokument zu löschen.


Wenn das Dokument aus der Ursprungs-DB gelöscht werden soll, kommt du mit einem RemoveFrom Folder nicht weit.

Da brauchst du  doc.Remove(True)


Axel
Titel: Re: Script - Dokument verschieben
Beitrag von: koehlerbv am 30.03.06 - 15:03:02
Wenn es aus einer anderen DB kommen sollte, kann man schon gar nicht in den Folder einer anderen DB verschieben. Ist es die gleiche DB, braucht man nicht erst in einen Folder zu verschieben, wenn man das Dok dann löschen will - dann kann man es gleich löschen ...

Ich denke, DevDev hat sich da falsch ausgedrückt.

Bernhard
Titel: Re: Script - Dokument verschieben
Beitrag von: DevDev am 30.03.06 - 15:11:24
Also, zu dem was ich mache.

- Der User öffnet ein Mail zur Ansicht.
- Dort gibt es eine Aktion "zu User"
- Es wird dann ein Benutzer ausgewählt der exisitert und eine Maildatenbank hat.
- Die ausgesuchte Mail wird dann in die Inbox des ausgewählten Users kopiert.
- Anschliessend in der Maildatenbank des aktuellen Benutzers in den Ordner verteilt verschoben.

Das Thema löschen hatte sich nach dem Hinweis von Bernhard's 'doc.Remove' erledigt, da ich dann die Funktion 'notesUIWorkspace.Folder' entdeckt hatte. Wie weiter oben im Codebeispiel geschrieben funktioniert es nun bei mir.

Der OP wird wohl auch mit der 'notesUIWorkspace.Folder' Funktion weiter kommen.

Gruss
Titel: Re: Script - Dokument verschieben
Beitrag von: ascabg am 30.03.06 - 15:25:30
Hi DevDev,

Kleine Frage von meiner Seite.

So wie Du den Sachverhalt jetzt darstellst, hat bei Dir jeder Benutzer schreibenden Zugriff auf die Mailfiles aller anderen Benutzer.

Bravo.

Andreas
Titel: Re: Script - Dokument verschieben
Beitrag von: Axel am 30.03.06 - 16:05:47
So wie Du den Sachverhalt jetzt darstellst, hat bei Dir jeder Benutzer schreibenden Zugriff auf die Mailfiles aller anderen Benutzer.

Bravo.

Sehe ich genauso. So viel zum Thema Sicherheit und Datenschutz. Ich würde mich bedanken, wenn jeder meiner Kollegen in meiner Mail-DB rummmalen könnte.

Aber mal 'ne ganz andere (blöde) Frage. Warum macht man das nicht über die Weiterleitungsfunktion in der Mail-DB? Dann landet das Mail auch bei dem entsprechenden User. Dieser bekommt es mit, dass er das Dokument in seiner Eingangsbox hat und kann es selbst dahion verschieben, wo er es braucht.

Bei der Lösung mit der Aktion, bekommt der User es ja gar nicht mit, dass er das Dokument in seiner Mail-DB hat. Die Missverständnisse sind vorprogrammiert.

Axel
Titel: Re: Script - Dokument verschieben
Beitrag von: koehlerbv am 30.03.06 - 16:09:58
- Anschliessend in der Maildatenbank des aktuellen Benutzers in den Ordner verteilt verschoben.

Nein, nein - so ist das nicht: Im Mailfile des ursprünglichen Empfängers (also "meiner") wird die Mail dann verschoben. Beim Empfänger des "weitergeleiteten" Mails (warum wird eigentlich nicht einfach weitergeleitet? Notfalls durch Spoofing) landet das Ding ausdrücklich in der Inbox.

Bernhard

PS: Vielleicht arbeitet DevDev für die Landessynode der Evangelischen Kirchen oder bei Grünfrieden - die haben sich bestimmt alle lieb und sehen das mit den fremden Mailfiles  nicht so eng  ;D
Titel: Re: Script - Dokument verschieben
Beitrag von: Axel am 30.03.06 - 16:22:11
... des "weitergeleiteten" Mails (warum wird eigentlich nicht einfach weitergeleitet? Notfalls durch Spoofing) landet das Ding ausdrücklich in der Inbox.

Das habe ich mich und hier auch schon gefragt.


Axel
Titel: Re: Script - Dokument verschieben
Beitrag von: DevDev am 30.03.06 - 17:55:32
So wie ich es jetzt mache ist nur mal ein Ansatz. Zum üben und probieren.

Bin zugegebenermasse noch absoluter Notes Newbie.
Also nicht gleich mit Steinen schmeissen.....  ::)
Bin doch noch am lernen, und alles ist so neu (anders)

Das Problem am Weiterleiten ist die Absenderadresse die dann geändert wird.
Will ich nicht. Per Principal ändern ist auch nicht so wirklich dolle, weil immer noch der
"Weiterleiter" auftaucht.

Was versteht ihr unter Spoofing? Bin für jeden Hinweis wie man sowas eleganter machen kann
offen.

Nicht jeder kann in jeder Maildatenbank rumwerkeln. Es ist lediglich ein einziger Benutzer der das darf. Alle anderen haben diese Option erst gar nicht, und dürften auch nicht.

Also immer nur her mit den Vorschlägen... :)

Gruss

Titel: Re: Script - Dokument verschieben
Beitrag von: koehlerbv am 30.03.06 - 18:02:40
Hier wirft niemand mit Steinen  ;) Klartext wird aber geredet.

"Spoofing" in diesem Falle: Du schickst das Mail mit neuem Empfänger, aber ansonsten unverändert weiter. Hierzu kopierst Du das Dokument nicht in das Mailfile eines anderen Users, sondern in die MAIL.BOX des Servers (Achtung: Das Teil muss nicht MAIL.BOX heissen!) und tauschst vorher noch die Empfängeradresse aus.

Vielleicht beschreibst Du ber auch einfach mal die Aufgabenstellung, die Du bekommen hast und wie Dein gegenwärtiger Erfahrungsschatz überhaupt aussieht. Newbee ist ja nicht Newbee  ;)

Bernhard
Titel: Re: Script - Dokument verschieben
Beitrag von: ell5lle am 31.03.06 - 08:54:41
Vielen Dank an alle !!!

Insbesondere gilt mein Dank ...
.... mal wieder "koehlerbv"

für den Hinweis:   Call doc.RemoveFromFolder( "($Inbox)" )

Super - Danke für diese ausführliche Mitarbeit nochmals an alle!

Gruss aus Kiel - ell5lle   :) :D ;D

Titel: Re: Script - Dokument verschieben
Beitrag von: DevDev am 31.03.06 - 14:31:27
Hier wirft niemand mit Steinen  ;) Klartext wird aber geredet.

"Spoofing" in diesem Falle: Du schickst das Mail mit neuem Empfänger, aber ansonsten unverändert weiter. Hierzu kopierst Du das Dokument nicht in das Mailfile eines anderen Users, sondern in die MAIL.BOX des Servers (Achtung: Das Teil muss nicht MAIL.BOX heissen!) und tauschst vorher noch die Empfängeradresse aus.

Vielleicht beschreibst Du ber auch einfach mal die Aufgabenstellung, die Du bekommen hast und wie Dein gegenwärtiger Erfahrungsschatz überhaupt aussieht. Newbee ist ja nicht Newbee  ;)

Bernhard

Klartext wird immer gerne genommen!  :)
Hab mir das ganze mal wieder durch den Kopf gehen gelassen. Mit dem in die Mail DB des Benutzers direkt schreiben war zum üben ganz nett. Aber glaube da wären immens viele Probleme aufgetaucht... Mache es jetzt wie oben geschrieben direkt in die Mail.Box des Servers.

Hier (http://atnotes.de/index.php?topic=29782.0) noch eine kurze Vorstellung um diesen Thread nicht komplett zu vergewaltigen....

Gruss