Domino 9 und frühere Versionen > ND8: Entwicklung

embedded view mit ausgewählten dokumenten

(1/4) > >>

ditodotorg:
Hallo ihr kleveren Notes-nutzer!

Ein neuer Schrei nach Hilfe....
Möchte gerne, dass auf klick eines Buttons folgendes passiert:
gehe zur view
wähle dort das erste dokument
vergleiche einen feldwert aus dieser view mit einem feldwert aus der geöffneten form
vergleiche einen zweiten feldwert in dieser view mit einem feldwert aus der geöffneten form
wenn beide übereinstimmen, dann lege die dokumente in einen folder

den folder habe ich erstellt und in dem formular als embedded view hinterlegt

habe folgende programmierung des buttons bereits vorgenommen:

Sub Click(Source As Button)
Dim session As NotesSession
Set session = New NotesSession
 Dim db As notesdatabase
Dim view As NotesView
Dim doc As NotesDocument

Set db = session.CurrentDatabase
Set view = db.GetView("Untersuchungskartei")
Set doc = view.GetFirstDocument

While Not (doc Is Nothing)
                If patient_number = profile_bill Then
                          doc.PutInFolder "Untersuchungen"
                End If
      Set doc = view.GetNextDocument(doc)
Wend

End Sub


Das ganze ist natürlich noch nicht zu ende gedacht.... aber ich komm grad auch nicht weiter...... HILFE!

Vielen Dank schonmal....

Grüße

DerAndre:
Hi.

Hast Du einen Fehler oder fehlt Dir was zu einer Lösung oder....?

pram:
Hallo Kathi

--- Zitat ---den folder habe ich erstellt und in dem formular als embedded view hinterlegt

--- Ende Zitat ---
und vermutlich kategorisiert mit "singleCategory"-Option (ansonsten nachfolgende Kommetare ignorieren)

Dazu passt natürlich folgender Code nicht:

--- Zitat ---Set view = db.GetView("Untersuchungskartei")
Set doc = view.GetFirstDocument

--- Ende Zitat ---
Weil: Du holst dir die View im Backend (diese weiß nichts von der Einbettung) und holst dir dann das erste Dokument.
Schau dir mal view.getAllDocumentsByKey bzw. den ViewNavigator an. (du musst im Backend nach der selben Kategorie suchen)

an das aktuelle doc kommst du in deinem Button mit "set currDoc = workspace.CurrentDocument.document"
und der Vergleich müsste dann so sein:

--- Code: ---                If doc.patient_number = currdoc.profile_bill Then
                          doc.PutInFolder "Untersuchungen"
                End If

--- Ende Code ---

Gruß
Roland

koehlerbv:

--- Zitat von: pram am 29.07.13 - 11:54:42 ---
--- Code: ---                If doc.patient_number = currdoc.profile_bill Then
                          doc.PutInFolder "Untersuchungen"
                End If

--- Ende Code ---

--- Ende Zitat ---

Das muss aber auch noch "optimiert" werden, sonst gibt es ein Type Mismatch:
If doc.patient_number (0) = currdoc.profile_bill (0) Then
    doc.PutInFolder "Untersuchungen"
End If

Bernhard

ditodotorg:
Hm.... vielleicht liegts an der späten Stunde in Kombi mit dem Laienwissen meinerseits.... aber ich brauch noch ne genauere anleitung  :-[ Sry.... könntet ihr mir das bitte ausführlicher darstellen... ichz weiß nämlich nicht genaus wie und was ich deklarieren muss......

hab bis jetzt folgendes:

Sub Click(Source As Button)
   Dim session As NotesSession
   Set session = New NotesSession
   
   Dim workspace As NotesUIWorkspace
   Dim db As notesdatabase
   Dim view As NotesView
   Dim doc As NotesDocument
   Dim currdoc As NotesUIDocument
   
   Set db = session.CurrentDatabase
   Set view = db.GetView("Untersuchungskartei")
   Set doc = view.getAllDocumentsByKey("profile")
   Set currDoc = workspace.CurrentDocument
   
   While Not (doc Is Nothing)
      If doc.profile_doc (0) = currdoc.patient_number (0) Then
         doc.PutInFolder "Untersuchungen"
      End If
   Wend
   
End Sub

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln