Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: sharif am 30.06.05 - 11:28:39

Titel: Daten aus Eingebettete Ansicht ziehen
Beitrag von: sharif am 30.06.05 - 11:28:39
Hallo Leute,
ich versuche Daten aus einer eingebetten Ansicht zu ziehen allerdings bekomme ich das auch nach Stunden langem druchlesen des atnotes Forums nicht hin. Habe mal folgenden Ansatz gewählt, alles nach Anleitung gemacht aber es will nicht funktionieren.
Der Agent würde dann mit der UNID die Daten herbeizuabern ;D
---------------------------------------------------------------------------------
Aus dem atnotes Forum:

geht ganz einfach wenn man weiß wie! Shocked
man braucht für das folgende Szenario:
1. Eingebettete Ansicht
2. eine eingebettete Outline mit einer Schaltfläche
3. ein Agent

Punkt 1 und Punkt 2 sind in der selben Maske untergebracht.
Im Ansichtsevent "Zielrahmen (Einfachklick)" wird folgendes Macro eingefügt:
@If(@ClientType="Notes";@Do(
@Environment("NameVariable";@Implode(@DbName;";")+";"+@Text(@DocumentUniqueID)));"");
""

In der Outline wird eine Schaltfläche (Gliederungseintrag) erstellt.
Sie erhält eine Formel:
@If (@Environment("NameVariable")="";@Do(@Prompt([Ok];"Dokument markieren";"Bitte markieren Sie zuerst ein Dokument!");@Return(""));"");
@Command([ToolsRunMacro];"EinAgent")

Im Agent wird die EnvironmetVariable "NameVariable" ausgelesen. Da die UNID dort abgelegt ist, kann man mit db.getdocumentbyunid das Dokument finden und löschen.

Das Szenario läuft erfolgreich und ohne Probleme. Grins
---------------------------------------------------------------------------------

Wo ist das?
(Ansichtsevent "Zielrahmen (Einfachklick)" )
Arbeite mit Lotus Notes 6.5... :o
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: Axel am 30.06.05 - 11:50:50
Wo ist das?
(Ansichtsevent "Zielrahmen (Einfachklick)" )
Arbeite mit Lotus Notes 6.5... :o

Wenn du die eingebettete Ansicht rechts anklickst und dir den Eigenschaftsdialog anzeigen lässt. Auf dem ersten Reiter findest du die Einstellungen für den Zielrahmen (unter dem Namen).


Axel
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: sharif am 30.06.05 - 12:44:56
Gibt es da vll einen besseren Ansatz daten aus einer Eingebetteten View zu ziehen?  ???
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: Axel am 30.06.05 - 12:59:41
Hi,

meines Wissens nicht. Was willst du denn machen?


Axel
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: sharif am 30.06.05 - 13:28:01
Habe drei Felder:
abfahrtort, ankunftsort und abfahrtsdatum

In einer Form zum Buchen der Strecke.
Durch auswahl des abfahrtort des ankunftsorts und des abfahrtsdatum soll die Eingebettete Ansicht die Daten rausfiltern.
Dat klappt ja alles...

Jetzt müsste der User ein Doc aus der E. View Markieren können und auf knopfdruck Buchen können....

Wie das dann später abläuft weiss ich schon! Bekomme nur nicht die daten aus der E. View...
Vll sollte ich das ganze mit Option Buttons versuchen?!?!?
Es wäre aber schöner wenn es mit E. Views gehen würde!  ;D
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: ata am 30.06.05 - 13:34:02
... wenn du für die eingebettete Ansicht eine verwendest, die nur für diesen Zweck verwendet wird, dann kannst du beim Öffnen des Dokumentes die verwendete Ansicht abprüfen - und das als Trigger verwenden - nur mal so ins unreine gesprochen...

ata
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: Axel am 30.06.05 - 13:38:19
Hi,

wäre es eine Möglichkeit den "Buchen"-Knopf als Aktion in die eingebettete Ansicht aufzunehmen? Seit der Version 6 kannst man auch die Aktionsleiste bei eingebetteten Ansichten einbelnden.

Axel
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: sharif am 30.06.05 - 15:00:34
 :D Ja klar!
Kann ich denn dann auf den ausgewählten Datensatz zugreifen?
(die Daten sollen in einem Agent weiterverarbeitet werden)
Wenn! - Wie kann ich auf die Daten vom Agent aus zugreifen?
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: Axel am 30.06.05 - 15:41:23
:D Ja klar!
Kann ich denn dann auf den ausgewählten Datensatz zugreifen?

Da kann ich dir wie Radio Eriwan antworten: "Im Prinzip ja, aber..."    8) ;)

Mit einem Agenten klappt das dann nicht. Du musst den Code in die Aktion packen. Dann kommst du aber mit UnprocessedDocuments an das/die markierte(n) Dokument(e) ran.

Axel



Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: sharif am 30.06.05 - 21:28:54
Hab das jetzt soweit das die Aktion in der View selbst funzt:

Dim s As New NotesSession
   Dim db As NotesDatabase
   Dim col As NotesDocumentCollection
   
   Set s = New NotesSession
   Set db = s.Currentdatabase
   Set col = db.UnprocessedDocuments
   
   If col.count > 1 Then
      Msgbox ("Bitte markieren Sie nur ein Dokument")
      Exit Sub
   End If

Wenn ich jetzt die Aktion über die Eingebettete Ansicht starte bekomme ich diesen fehler: "Object variable not set"

Was ist da falsch???
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: TMC am 30.06.05 - 21:34:55
In welcher Zeile tritt der Fehler auf?
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: sharif am 30.06.05 - 21:43:05
Habe zwar "Debug LotusScript" eingeschaltet aber der fehler kommt sofort ohne das, dass Debug fenster geöffnet wird...
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: TMC am 30.06.05 - 21:52:43
Warum nimmst Du denn kein ErrorHandling?  ;)

Code
Sub 123
On Error Goto ErrorHandler

------------ HIER DEIN CODE ----------------

GoOut:
Exit Sub
ErrorHandler:
Msgbox "Error #" & Err & " — " & Error$ & " (Zeile: " & Erl & ")", 48, "Laufzeitfehler"
Resume GoOut
End Sub
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: sharif am 30.06.05 - 23:23:19
So sieht jetzt mein Code aus:

---------------------------------
On Error Goto ErrorHandler
   
   Dim s As New NotesSession
   Dim db As NotesDatabase
   Dim col As NotesDocumentCollection
   
   Set s = New NotesSession
   Set db = s.Currentdatabase
   Set col = db.UnprocessedDocuments
   
   If col.count > 1 Then
      Msgbox ("Bitte markieren Sie nur ein Dokument")
      Exit Sub
   End If
   
GoOut:
   Exit Sub
ErrorHandler:
   Msgbox "Error #" & Err & " — " & Error$ & " (Zeile: " & Erl & ")", 48, "Laufzeitfehler"
   Resume GoOut   
---------------------------------

Wenn ich die Aktion über eine "normale" View starte funtioniert es ja aber wenn ich die Aktion über die Eingebettete View starte funtioniert es nicht...
Durch den Error Handler verändert sich nichts an der Fehlermeldung! :-[
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: Thomas Schulte am 30.06.05 - 23:35:33
Das ging früher nicht weil du in einer Embedded View den Handle über die Unprocessed Eigenschaft der Database nicht bekommen hast.
Deswegen ja auch der Trick mit der outline und der Environment Variable in deinem Ursprungspost.

Wobei ich mittlerweile ( 6.5.4 ) festgestellt habe das Notes das markieren und anschließende Löschen aus eine Embedded View beherrscht. Also müsste rein theoretisch jetzt auch ein Zugriff über die unprocessed Eigenschaften funktionieren.  Aber gesehen hab ich das noch nicht. Also ist es auch durchaus möglich das es immer noch nicht funktioniert. Warscheinlicher ist es das das hier (http://www-10.lotus.com/ldd/nd6forum.nsf/55c38d716d632d9b8525689b005ba1c0/d4fea91677a9d82d85256da90062a118?OpenDocument) immer noch gilt
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: sharif am 30.06.05 - 23:38:40
Da war wohl einer schneller  :o

Es funzt!!!  ;D ;D ;D
Hatte wohl andere Notes interne probs...
Er hat in der E. View eine Formel ausgeführt die ich vorher mal ausprobiert habe! Keine Ahnung warum. :-:
Der letzte Code ist also funktionsfähig!!!

Hab die 6.5.4 ...
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: TMC am 30.06.05 - 23:46:15
Schön das es klappt.

By the way, die Zeile
Code
Set s = New NotesSession
kannst Du löschen, da Du das NotesSession-Objekt schon beim Dimmen mit New setzt.
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: Axel am 01.07.05 - 08:40:32
Das ging früher nicht weil du in einer Embedded View den Handle über die Unprocessed Eigenschaft der Database nicht bekommen hast.
Deswegen ja auch der Trick mit der outline und der Environment Variable in deinem Ursprungspost.

Wobei ich mittlerweile ( 6.5.4 ) festgestellt habe das Notes das markieren und anschließende Löschen aus eine Embedded View beherrscht. Also müsste rein theoretisch jetzt auch ein Zugriff über die unprocessed Eigenschaften funktionieren.  Aber gesehen hab ich das noch nicht. Also ist es auch durchaus möglich das es immer noch nicht funktioniert. Warscheinlicher ist es das das hier (http://www-10.lotus.com/ldd/nd6forum.nsf/55c38d716d632d9b8525689b005ba1c0/d4fea91677a9d82d85256da90062a118?OpenDocument") immer noch gilt

Hi,

das geht auch schon unter 6.5.3.

Der Link ist fehlerhaft. Hier ist er fehlerbereinigt: Embedded Views and Unprocesseddocuments method
 (http://www-10.lotus.com/ldd/nd6forum.nsf/55c38d716d632d9b8525689b005ba1c0/d4fea91677a9d82d85256da90062a118?OpenDocument)


Axel


Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: sharif am 01.07.05 - 08:49:17
Danke an alle dir mir geholfen haben!  :D
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: sharif am 01.07.05 - 15:08:39
Hab noch nen kleines problem ;D:

Wie kann ich mit einer Aktion durch LotusScript ein Feld in dem selben Doc füllen???
z.b. eine Checkbox...

Daten werden aus einer E. View gezogen und sollen im gleichen doc wo die E. View drin ist quasi nur im nächsten Tabellen Tab in eine Checkbox geschrieben werden...
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: TMC am 01.07.05 - 15:21:15
Guckst Du Designerhilfe:

NotesDocument - Klasse. Dort dann die ReplaceItemValue - Methode.

Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: sharif am 01.07.05 - 16:18:08
Ich arbeite doch dann im Frontend wenn ich das Feld in der gerade geöffneten Form/Doc füllen will...
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: TMC am 01.07.05 - 16:23:20
Ja, aber deswegen kannst Du trotzdem aus dem UIDocument das Backenddokument über UIDocument.Document instantiieren und dort Items setzen.

Aber wenn Du unbedingt auf Frontend bestehst, dann kannst Du Dir auch mal NotesUidocument.Fieldsettext ansehen  ;)
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: sharif am 01.07.05 - 18:01:02
Brauche ich noch was?

        Dim uidoc As NotesUIDocument
   Dim workspace As New NotesUIWorkspace
   
   Set uidoc = workspace.CurrentDocument
   id = "feldname"
        t = "feldname"
   Call uidoc.FieldSetText("t","id")
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: koehlerbv am 01.07.05 - 18:03:29
Damit setzt Du den Wert des Feldes namens "t" mit dem Wert "id". Das wäre das gleiche wie
t := "id".

Du meinst sicher:
id = "DenWertDenDuimFeldsehenmöchtest"
t = "NamesdesFeldes"
Call uidoc.FieldSetText(t,id)

Bernhard
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: sharif am 02.07.05 - 15:24:12
In ein Textfeld schreibt er jetzt...
Wenn die Aktion aber in eine Checkbox schreiben soll funktioniert es nicht...
Muss ich bei einer Checkbox irgendwas beachten?  ::)
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: koehlerbv am 02.07.05 - 16:05:17
Diese Problembeschreibung ist "etwas unscharf". Erforderlich wären Beschreibung des Zielfeldes (genauer Typ, vorgegebene Keywords) und der verwendete Code zum Belegen des Feldes.

Bernhard
Titel: Re: Daten aus Eingebettete Ansicht ziehen
Beitrag von: sharif am 04.07.05 - 14:41:52
Danke nochmal an alle die mir geholfen haben!  ;)
Werde mich auch bemühen anderen leuten in diesem Forum zu helfen!
Ist echt super hier!!! :D