Autor Thema: Items im Postopen  (Gelesen 3218 mal)

Offline hupfi

  • Junior Mitglied
  • **
  • Beiträge: 73
Items im Postopen
« am: 28.04.08 - 11:56:53 »
Hallo liebe atNotes Gemeinde,

ich habe ein Problem, was ich mir nicht so recht erklären kann.

Ich möchte im Postopen Evenet auf die Felder des NotesUIDocument zugreifen( Source ).
Wenn ich mir das ganze im Debug-Modus ansehen bemerke ich , dass keine Items gesetzt werden,
obwohl das Dokument schon gespeichert wurde. Im  Dokument sind auch Felder enthalten.

Hat jemenad eine Erklärung für dieses Problem?


Hupfi

klaussal

  • Gast
Re: Items im Postopen
« Antwort #1 am: 28.04.08 - 12:03:48 »
Ein bisschen Code wäre nicht schlecht...

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Items im Postopen
« Antwort #2 am: 28.04.08 - 12:04:42 »
Merkwürdig, denn im PostOpen stehen Dir alle Items zur Verfügung ... Code? Schirmschuss?

Bernhard

Offline hupfi

  • Junior Mitglied
  • **
  • Beiträge: 73
Re: Items im Postopen
« Antwort #3 am: 28.04.08 - 12:55:21 »
Hier der Code:

Code
Sub Postopen(Source As Notesuidocument)
	Dim doc As NotesDocument
	Set doc = source.Document
	
	Forall currField In doc.items
		If Instr( currField.name, "_" ) = 0  Then
			If Instr( currField.name, "$" ) =0 Then
				LangItems (currField.name) = currField.text
			End If
		End If
	End Forall
End Sub

Ich erhalte dann beim beginn der Forall-Schleife einen Type Missmatch. Das liegt wohl daran, dass das NotesUIDocument keine Items hat und somit auch das NotesDocument diese nicht erbt.

   

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Items im Postopen
« Antwort #4 am: 28.04.08 - 13:03:42 »
Sehr merkwürdig. Funktioniert folgender Code bei Dir?
Code
Sub Postopen (Source As Notesuidocument)
	
	Dim doc As NotesDocument
	Set doc = source.Document
	
	Forall currField In doc.items
		Messagebox currField.name	
	End Forall
	
End Sub

Offline hupfi

  • Junior Mitglied
  • **
  • Beiträge: 73
Re: Items im Postopen
« Antwort #5 am: 28.04.08 - 16:07:07 »
Nein dieser Code funktioniert leider auch nicht.

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Items im Postopen
« Antwort #6 am: 28.04.08 - 16:08:53 »
Nun, dieser Code ist aber absoluter Standard. Mir fällt aber keine Stelle ein, die Du in der Maske verbogen haben könntest, damit dieser Code NICHT funktioniert.

Kannst Du eine leere DB mit der betreffenden Maske hier einstellen?

Bernhard

Offline LN4ever

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 505
  • Geschlecht: Männlich
Re: Items im Postopen
« Antwort #7 am: 28.04.08 - 21:25:33 »
Du verbirgst uns etwas. Deine Schleifenvariable currField ist entweder schon einmal in deinem Code mit einem anderen Variant-Type belegt gewesen, hat bereits in einer anderen ForAll-Schleife ihre Dienste getan oder du hast sie explizit irgendwo definiert (tut man nicht mit ForAll Schleifenvariablen).

Als weitere Möglichkeiten für das von dir beschriebene Verhalten fallen mir nur noch Kabinettstückchen ein wie Kopfzeilen in Maske, Kontext als Link öffnen, Antwortdokument öffnen, Preview-Pane geöffnet haben und Hauptdokument (das dann ja in der PreviewPane ist) im BEARBEITEN-Modus mit speziellen OLE-Objekt-Starteigenschaften öffnen ein. Und das alles, wenn der POSTOPEN gar keinen eigenen Code hat, sondern im QUERYOPEN mit ON EVENT POSTOPEN angesprochen wird.

Alte Datenbank, Gestaltungselemente (Teilmasken) nur teilweise mit aktuell verwendeter Version durchkompilert ? In einer Teilmaske im QUERYOPEN ein

CONTINUE=FALSE
END

gesetzt ?

Vorsicht, das sind alles absolute Exoten. Der Fehler steckt garantiert in einer Bedingung des ersten Absatzes.

Gruß

Norbert
Situs vilate in isse tabernit.

Offline ata

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re: Items im Postopen
« Antwort #8 am: 28.04.08 - 22:31:39 »
... was siehst du im Debugger - gibt es da auch keine Items in dem Doc? Ich denke du spielst hier mit Kopfbereich oder derartigem, wie bereits von Norbert erwähnt...

Toni
Grüßle Toni :)

Offline hupfi

  • Junior Mitglied
  • **
  • Beiträge: 73
Re: Items im Postopen
« Antwort #9 am: 30.04.08 - 13:22:19 »
@ata: Sobald ich es mir im Debugger ansehe sind keine Items gesetzt. Es verhält sich so als wäre des Dokument komplett leer.

@LN4ever: ich verwende currField nur einmal im Postopen. In dieser Maske sind auch keine weiteren Teilmaksen und ScriptBefehle eingebunden.


Ich habe auch einige Tests gemacht. Der Fehler tritt in der Notes Client Version 7.0.2 auf. Sobald ich einen 6er Client verwende funktioniert das Script.

Ich werde wohl einen Call an IBM senden.

klaussal

  • Gast
Re: Items im Postopen
« Antwort #10 am: 30.04.08 - 13:25:17 »
Hier unter 7.02 geht das wunderbar.

Deshalb nochmals :

Zitat
Kannst Du eine leere DB mit der betreffenden Maske hier einstellen?


Offline hupfi

  • Junior Mitglied
  • **
  • Beiträge: 73
Re: Items im Postopen
« Antwort #11 am: 30.04.08 - 16:38:41 »
Es funktioniert auch grundsätzlich in Notes 7.0.2 nur bei dieser Maske nicht. In allen anderen Masken geht es.

Ich frage mal meinen Chef ob ich eine leere Datenbank mit der Maske hier uploaden darf.
Jetzt hab ich aber erst mal ein verlängertes Wochenende vor mir  ;D

Schon mal vielen Dank für Eure Antworten. Melde mich dann nächste Woche wieder.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz