Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Bruce Willis am 08.07.04 - 14:51:13

Titel: "Email-Absender", "Gesendet am" und "Thema" kopieren
Beitrag von: Bruce Willis am 08.07.04 - 14:51:13
Hallo,

weiß jemand, wie ich die o.g. Felder aus einer E-Mail kopieren und in ein anderes Dokument einfügen kann?

Am besten wäre mit Kommas getrennt und neben dem DocLink, der wie unten beschrieben erzeugt wird...

Danke im Voraus
Bruce

-------------
Die Email-Verknüpfung zu einer E-Mail übers Auswahl-Fenster erzeugen:

1. Eine separate Standard-View "(ViewRelations)" mit mehreren Spalten erstellt, eine Spalte "IDnum" mit der Formel @Text(@DocumentUniqueID) ganz vorne hinzugefügt.

2. Eine leere View "(ViewRelationsOne)" erstellt, eine Spalte "IDnumOne" mit der Formel @Text(@DocumentUniqueID) ganz vorne eingefügt (aufsteigend sortiert). Die Option "Show response documents in a hierarchy" (Ansichtseigenschaften, 2. Reiter) ausgeschaltet.

3. In der Maske "Aufgabe" eine neue Aktion mit dem u.g. Code erstellt:

_ViewUNID := "(ViewRelationsOne)";
_ViewAnzeige := "(ViewRelations)";
_unid := @PickList([Custom]:[Single];"":"";_ViewAnzeige; "Auswahl";"E-Mail zum Verknüpfen";1);
_Server := @Subset (@DbName; 1);
_Datenbank := @Subset (@DbName; -1);
@Command([FileOpenDatabase];_Server : _Datenbank ;_ViewUNID;_unid;"1";"1");
@Command([EditMakeDocLink]);
@Command([FileCloseWindow]);
@PostedCommand([EditPaste])

4. In der DB muss eine "Default View" vorhanden sein
Titel: Re:"Email-Absender", "Gesendet am" und "Thema" kopieren
Beitrag von: Driri am 08.07.04 - 15:30:03
Du müßtest dann per @dblookup die Werte auslesen. Über die vorher ermittelte UNID hast Du ja den Key für das Dokument.

Die so ermittelten Werte dann einfach hinterher pasten (über @Command([EditInsertText])).
Titel: Re:"Email-Absender", "Gesendet am" und "Thema" kopieren
Beitrag von: Bruce Willis am 08.07.04 - 16:10:54
Danke!
Könntest Du bitte den entsprechenden Code hier schreiben?
Titel: Re:"Email-Absender", "Gesendet am" und "Thema" kopieren
Beitrag von: Driri am 08.07.04 - 16:20:10
Eigentlich ist das nicht ganz der Sinn der Sache, aber ich hab heute meinen sozialen Tag  ;D

Ins grobe geschrieben könnte das so aussehen, wobei Du natürlich noch einige Dinge anpassen mußt (Feldnamen, etc.) :

_absender := @DbLookup("":"NoCache";"SERVER":"DB"; "VIEW"; _unid; "From");
_sent := @DbLookup("":"NoCache";"SERVER":"DB"; "VIEW"; _unid; "PostedDate");
_subject := @DbLookup("":"NoCache";"SERVER":"DB"; "VIEW"; _unid; "Subject");
@Command([EditInsertText]; _absender);
@Command([EditInsertText]; _sent);
@Command([EditInsertText]; _subject)

Das müßtest Du dann hinter dem Einfügen des Doclinks ausführen und ggf. noch Leerzeichen oder so einbauen, kann man ja vorher die drei Ergebnisstrings verketten und dann als einen String einfügen.
Titel: Re:"Email-Absender", "Gesendet am" und "Thema" kopieren
Beitrag von: Bruce Willis am 09.07.04 - 01:43:08
Hallo Driri,

Du bist so-o-o gütig und gutmütig! :)
Vielen Dank!!!

Weißt Du noch, warum diese Fehlermeldung kommt, nachdem die Verknüpfung erstellt ist?

"Angegebener Befehl kann nicht ausgeführt werden"


_Server := @Subset (@DbName; 1);
_ViewUNID := "(ViewRelationsOne)";
_ViewAnzeige := "(ViewRelations)";
_unid := @PickList([Custom]:[Single];"":"";_ViewAnzeige; "Auswahl";"E-Mail zum Verknüpfen";1);
_Server := @Subset (@DbName; 1);
_Datenbank := @Subset (@DbName; -1);
@Command([FileOpenDatabase];_Server : _Datenbank ;_ViewUNID;_unid;"1";"1"); @Command([EditMakeDocLink]);
@Command([FileCloseWindow]);
@PostedCommand([EditPaste]);

_absender := @DbLookup("":"NoCache";_Server : _Datenbank; _ViewUNID; _unid; "From");
_sent := @DbLookup("":"NoCache";_Server : _Datenbank; _ViewUNID; _unid; "PostedDate");
_subject := @DbLookup("":"NoCache";_Server :_Datenbank; _ViewUNID; _unid; "Subject");
@Command([EditInsertText];@Name([CN]; _absender) + " -> ");
@Command([EditInsertText]; _sent);
@Command([EditInsertText]; _subject + " ; "  + @NewLine)
Titel: Re:"Email-Absender", "Gesendet am" und "Thema" kopieren
Beitrag von: Driri am 09.07.04 - 12:17:23
Ich tippe mal, das FileCloseWindow kommt nen bißchen früh, oder wofür ist das an der Stelle gedacht ?
Titel: Re:"Email-Absender", "Gesendet am" und "Thema" kopieren
Beitrag von: Bruce Willis am 09.07.04 - 23:02:59
Hallo Driri,

nochmals Danke!

Alles funktioniert jetzt einwandfrei!

Weißt du vielleicht, wie ich am Ende noch eine neue Zeile hinzufügen bzw. anfangen kann?
@NewLine macht das nicht.

Gruß
Bruce

-------

_Server := @Subset (@DbName; 1);
_ViewUNID := "(ViewRelationsOne)";
_ViewAnzeige := "(ViewRelations)";
_unid := @PickList([Custom]:[Single];"":"";_ViewAnzeige; "Auswahl";"E-Mail zum Verknüpfen";1);
_Server := @Subset (@DbName; 1);
_Datenbank := @Subset (@DbName; -1);

_sent := @DbLookup("":"NoCache";_Server : _Datenbank; _ViewUNID; _unid; "PostedDate");
_sender := @DbLookup("":"NoCache";_Server : _Datenbank; _ViewUNID; _unid; "From");
_sentTo := @DbLookup("":"NoCache";_Server : _Datenbank; _ViewUNID; _unid; "SendTo");
_subject := @DbLookup("":"NoCache";_Server :_Datenbank; _ViewUNID; _unid; "Subject");

@Command([EditInsertText]; @Text(_sent;"D0T1") + "  =>   ");
@Command([EditInsertText];@Name([CN]; _sender) + "  =>   ");
@Command([EditInsertText];@Name([CN]; _sentTo )+ "  =>   ");
@Command([EditInsertText]; _subject + "  => ");

@Command([FileOpenDatabase];_Server : _Datenbank ;_ViewUNID;_unid;"1";"1"); @Command([EditMakeDocLink]);
@Command([FileCloseWindow]);
@PostedCommand([EditPaste]);
Titel: Re:"Email-Absender", "Gesendet am" und "Thema" kopieren
Beitrag von: Glombi am 10.07.04 - 12:16:39
@Command([EditInsertText]; @NewLine)

fügt eine neue Zeile ein.

Andreas
Titel: Re:"Email-Absender", "Gesendet am" und "Thema" kopieren
Beitrag von: Bruce Willis am 10.07.04 - 23:24:44
danke,

aber anscheinend nicht immer... :(

"Angegebener Befehl kann nicht ausgeführt werden"

Ich vermute, weil die Verknüpfung "aktiv" ist, d.h. nach dem Einfügen steht der Cursor nicht rechts von der Verknüpfung...

Weiß jemand, wie ich den Fokus nacht rechts schieben kann?
Titel: Re:"Email-Absender", "Gesendet am" und "Thema" kopieren
Beitrag von: TMC am 11.07.04 - 21:14:30
Leo,

Du kannst noch mit dem EditRight @Command testen, und außerdem mit @PostedCommand.

Bedenke: Du machst hier Frontend-Dinge. 100% sauber sind die meiner Meinung nach nie. Und auch nicht immer 100% durchschaubar (insbesondere auch in Kombination mit @Command / @PostedCommand).
Titel: Re:"Email-Absender", "Gesendet am" und "Thema" kopieren
Beitrag von: koehlerbv am 11.07.04 - 21:30:45
Vor allem: Warum acht Jahre nach Erscheinen von LS noch dieser @Command-Krampf ? Das ist doch ein sinnloser Stunt !

Bernhard
Titel: Re:"Email-Absender", "Gesendet am" und "Thema" kopieren
Beitrag von: Bruce Willis am 11.07.04 - 21:54:04
Hallo Matthias,

danke für den Tipp!

Gruß
Bruce
Titel: Re:"Email-Absender", "Gesendet am" und "Thema" kopieren
Beitrag von: Bruce Willis am 11.07.04 - 21:56:28
Hallo Bernhard,

willst Du in der Tat, dass ich Dir den Sinn eröffne?
 :)

Gruß
Bruce
Titel: Re:"Email-Absender", "Gesendet am" und "Thema" kopieren
Beitrag von: Semeaphoros am 11.07.04 - 21:57:03
Wozu in die Ferne schweifen, für EditRight gibts in der Hilfe dieses Beispiel

@Command( [EditRight]; "3" )

Du müsstest wohl die 3 durch eine eins ersetzen und schon könnte es gehen.
Titel: Re:"Email-Absender", "Gesendet am" und "Thema" kopieren
Beitrag von: Bruce Willis am 11.07.04 - 22:19:03
Danke,

leider funktioniert keine der beiden Varianten...
 :(

-EDIT-
(schlechte Varianten enfernt)

Titel: Re:"Email-Absender", "Gesendet am" und "Thema" kopieren
Beitrag von: Semeaphoros am 11.07.04 - 22:31:45
Uh

Entweder

@Command( [EditRight]; "1" );

oder

@PostedCommand( [EditRight]; "1" );

Auch da wäre ein Blick in die Hilfe unter @PostedCommand ganz nützlich gewesen.
Titel: Re:"Email-Absender", "Gesendet am" und "Thema" kopieren
Beitrag von: koehlerbv am 11.07.04 - 22:41:39
Hallo Bernhard,

willst Du in der Tat, dass ich Dir den Sinn eröffne?
 :)

Gruß
Bruce

Nö, eher weniger. Tut nicht not, wirklich nicht ;D

Bernhard
Titel: Re:"Email-Absender", "Gesendet am" und "Thema" kopieren
Beitrag von: Bruce Willis am 11.07.04 - 22:43:23
Hallo Semeaphoros,

vielen Dank für Dein Verständnis!
 :-*

Dies unten funktioniert!!!

@PostedCommand( [EditRight]; "1" );
@PostedCommand([EditInsertText]; @NewLine)
Titel: Re:"Email-Absender", "Gesendet am" und "Thema" kopieren
Beitrag von: Bruce Willis am 11.07.04 - 23:04:25
Hallo,

VIELEN DANK AN DIE BESTEN NOTES DEVELOPER:

Driri, Glombi, TMC, Koehlerbv, Semeaphoros

Alles funktioniert perfekt!!!

Gruß
Bruce

***************
Für alle interessierten Forum-Besucher: anbei ist der Code, der die Email-Verknüpfung (DocLink) zu einer E-Mail übers Auswahl-Fenster erzeugt und einen ähnlichen Text aus der E-Mail kopiert:

17.06.2004 16:44  =>   Bruce Willis  =>   Arni  =>   Terminator-4  => [DocLink]

Also:

1. Eine separate Standard-View "(ViewRelations)" mit mehreren Spalten erstellt, eine Spalte "IDnum" mit der Formel @Text(@DocumentUniqueID) ganz vorne hinzugefügt.

2. Eine leere View "(ViewRelationsOne)" erstellt, eine Spalte "IDnumOne" mit der Formel @Text(@DocumentUniqueID) ganz vorne eingefügt (aufsteigend sortiert). Die Option "Show response documents in a hierarchy" (Ansichtseigenschaften, 2. Reiter) ausgeschaltet.

3. In der Maske "Aufgabe" eine neue Aktion mit dem u.g. Code erstellt:

_Server := @Subset (@DbName; 1);
_ViewUNID := "(ViewRelationsOne)";
_ViewAnzeige := "(ViewRelations)";
_unid := @PickList([Custom]:[Single];"":"";_ViewAnzeige; "Auswahl";"E-Mail zum Verknüpfen";1);
_Server := @Subset (@DbName; 1);
_Datenbank := @Subset (@DbName; -1);

_sent := @DbLookup("":"NoCache";_Server : _Datenbank; _ViewUNID; _unid; "PostedDate");
_sender := @DbLookup("":"NoCache";_Server : _Datenbank; _ViewUNID; _unid; "From");
_sentTo := @DbLookup("":"NoCache";_Server : _Datenbank; _ViewUNID; _unid; "SendTo");
_subject := @DbLookup("":"NoCache";_Server :_Datenbank; _ViewUNID; _unid; "Subject");

@Command([EditInsertText];@Text(_sent;"D0T1") + "  =>   ");
@Command([EditInsertText];@Name([CN]; _sender) + "  =>   ");
@Command([EditInsertText];@Name([CN]; _sentTo )+ "  =>   ");
@Command([EditInsertText]; _subject + "  => ");

@Command([FileOpenDatabase];_Server : _Datenbank ;_ViewUNID;_unid;"1";"1"); @Command([EditMakeDocLink]);
@Command([FileCloseWindow]);
@PostedCommand([EditPaste]);

@PostedCommand( [EditRight]; "1" );
@PostedCommand([EditInsertText]; @NewLine)


4. In der DB muss eine "Default View" vorhanden sein