Autor Thema: View = firstDocument Error ! Need help plz  (Gelesen 5473 mal)

Offline LukasSChl

  • Junior Mitglied
  • **
  • Beiträge: 68
  • Geschlecht: Männlich
View = firstDocument Error ! Need help plz
« am: 24.03.10 - 08:40:19 »
Hallo zusammen

Ich habe ein Problem mit folgedem Lotus Script Auszug.
Dieses Postopen event setzt Doc.View gleich dem ersten Dokument.
Für den Fall das es noch keine Dokumente gibt, soll die laufende Nummer 1 verteilt werden, doch leider kommt nach der Zeile
"Set oDocView = oView.GetFirstDocument"
direkt die Fehlermeldung.

Weiß jmd vllt. wie man sich da abhilfe schaffen kann?

Ich arbeite mit Lotus Notes 6.5

Mit freundlichen Grüßen

Lukas


Code
Sub Postopen(Source As Notesuidocument)
	Dim oSession As New NotesSession
	Dim oDateTimeHeute As New NotesDateTime ( "" )
	Dim oItem As Notesitem
	Call oDateTimeHeute.SetNow
	
	Dim oDoc As NotesDocument	
	Set oDoc = Source.Document   
	geprueft = False
	
	If source.isnewdoc Then
		
		Dim oDb As NotesDatabase
		Dim oView As NotesView
		Dim oDocView As NotesDocument
		
		Set oDb = oSession.CurrentDatabase
		Set oView = oDb.GetView( "(§LfdNr)" )

                  
		Set oDocView = oView.GetFirstDocument
	
                                Hier kommt die Fehlermeldung und damit ist hier Ende.

		If Not (oDocView Is Nothing) Then
			oDoc.LfdNr = oDocView.LfdNr(0) + 1
		Else
			oDoc.LfdNr = 1
		End If
Informatikkaufmann-Azubi (3tes Lehrjahr)
Lotus Notes Server: 8 * 8.0.2
Lotus Notes Clients: ca. 1800 * 8.0.2
Dienstags außer Haus

klaussal

  • Gast
Re: View = firstDocument Error ! Need help plz
« Antwort #1 am: 24.03.10 - 08:45:45 »
Wenn dies der x-te Versuch sein sollte, eine laufende Nummerierung zu machen, vergiß es.
Dazu gibt es genug Beiträge im Forum.

Offline ascabg

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.697
  • Geschlecht: Männlich
Re: View = firstDocument Error ! Need help plz
« Antwort #2 am: 24.03.10 - 08:47:11 »
Hallo,

Frag doch mit view.EntryCount ab, ob sich Dokumente in der Ansicht befinden.


Andreas

Offline LukasSChl

  • Junior Mitglied
  • **
  • Beiträge: 68
  • Geschlecht: Männlich
Re: View = firstDocument Error ! Need help plz
« Antwort #3 am: 24.03.10 - 08:52:07 »
@ascabg Danke dir, werds ma testen

EDIT:
Code
		If Not oView.EntryCount > 1 Then
			Set oDocView = oView.GetFirstDocument
			oDoc.LfdNr = oDocView.LfdNr(0) + 1
		                Else
			oDoc.LfdNr = 1
		                End If

So hab ich mir das gedacht, leider aber auch ohne Erfolg.
(Arbeite jetzt seit ein paar Tage mit dem Notes Designer)

mfg Lukas
« Letzte Änderung: 24.03.10 - 09:27:02 von LukasSChl »
Informatikkaufmann-Azubi (3tes Lehrjahr)
Lotus Notes Server: 8 * 8.0.2
Lotus Notes Clients: ca. 1800 * 8.0.2
Dienstags außer Haus

Offline Axel

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: View = firstDocument Error ! Need help plz
« Antwort #4 am: 24.03.10 - 09:00:05 »
...doch leider kommt nach der Zeile
"Set oDocView = oView.GetFirstDocument"
direkt die Fehlermeldung.
...

Welche Fehlermeldung?

Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline LukasSChl

  • Junior Mitglied
  • **
  • Beiträge: 68
  • Geschlecht: Männlich
Re: View = firstDocument Error ! Need help plz
« Antwort #5 am: 24.03.10 - 09:27:18 »
@Axel
Die Fehlermeldung lautet: "Object Variable not set"

mfg Lukas
Informatikkaufmann-Azubi (3tes Lehrjahr)
Lotus Notes Server: 8 * 8.0.2
Lotus Notes Clients: ca. 1800 * 8.0.2
Dienstags außer Haus

Offline ascabg

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.697
  • Geschlecht: Männlich
Re: View = firstDocument Error ! Need help plz
« Antwort #6 am: 24.03.10 - 09:38:58 »
Und Du bist sicher das Du die View gesetzt hast?

Code
Set oView = oDb.GetView( "(§LfdNr)" )

Das Paragraphenzeichen erscheint mir doch etwas suspekt.


Andreas

Offline LukasSChl

  • Junior Mitglied
  • **
  • Beiträge: 68
  • Geschlecht: Männlich
Re: View = firstDocument Error ! Need help plz
« Antwort #7 am: 24.03.10 - 09:46:40 »
Code
Set oView = oDb.GetView( "($LfdNr)" )
Sollte ein Dollarzeichen sein, aber die Zeile liest er ohne Fehlermeldung, die kommt erst vor dem

Set oDocView = oView.GetFirstDocument

Es sind ja auch keine Dokumente in der Ansicht und deshalb versuch ich das abzufangen:
Code
If Not oView.EntryCount > 1 Then
     Set oDocView = oView.GetFirstDocument
     oDoc.LfdNr = oDocView.LfdNr(0) + 1
Else
     oDoc.LfdNr = 1
End If


mfg Lukas
« Letzte Änderung: 24.03.10 - 09:48:38 von LukasSChl »
Informatikkaufmann-Azubi (3tes Lehrjahr)
Lotus Notes Server: 8 * 8.0.2
Lotus Notes Clients: ca. 1800 * 8.0.2
Dienstags außer Haus

Offline ascabg

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.697
  • Geschlecht: Männlich
Re: View = firstDocument Error ! Need help plz
« Antwort #8 am: 24.03.10 - 09:54:19 »
Dann stell Deine Abfrage nach dem EntryCount mal um.

Code
If oView Is Nothing then Error
If oView.EntryCount > 0 then

Und baue eine Fehlerbehandlung ein.


Andreas

Offline LukasSChl

  • Junior Mitglied
  • **
  • Beiträge: 68
  • Geschlecht: Männlich
Re: View = firstDocument Error ! Need help plz
« Antwort #9 am: 24.03.10 - 10:06:52 »
Code
If oView Is Nothing then Error
oView ist Nothing, was aber eigentlich nicht sein sollte, da ich oView ja die lfdNr vorgegeben hab.

If oView.EntryCount > 0 then
Also wenn ich nur Teste mit:
Code
If oView.EntryCount > 0 then
Messagebox ("test")
End if
auch wenn ich das ">" zum "<" mache kommt der Fehler, und ich bekomme keine Msgbox ausgegeben, also stört der sich hier doch schon am Entry Count oder?

mfg Lukas
Informatikkaufmann-Azubi (3tes Lehrjahr)
Lotus Notes Server: 8 * 8.0.2
Lotus Notes Clients: ca. 1800 * 8.0.2
Dienstags außer Haus

Driri

  • Gast
Re: View = firstDocument Error ! Need help plz
« Antwort #10 am: 24.03.10 - 10:15:51 »
Ne, wenn oView schon Nothing ist, dann kann der EntryCount auch nichts als einen Fehler zurückliefern, weil es nichts gibt, in dem gezählt werden könnte.

Kontrollier noch einmal die Zuweisung von oView und ob es die dort angegebene View tatsächlich gibt.


Und wie Klaus schon geschrieben hat : Wenn das der Versuch einer eindeutigen Nummer wird, dann stöber mal hier im Forum nach Beiträgen zu dem Thema. Da gibt es diverse Fallstricke, die man kennen und berücksichtigen sollte. Und dann muß man sich immer noch überlegen, ob man nicht evlt. doch einfach mit der Universal ID auskommt.


Edit :

Das PostOpen halte ich persönlich übrigens nicht für den idealen Ansatzpunkt für so etwas. So generierst Du nämlich sehr schnell doppelte Nummern, weil ja zwischen Öffnen des Dokumentes und Speichern einige Zeit ins Land gehen kann, in der andere Benutzer ebenfalls ein Dokument erzeugen und die selbe ID ziehen.
« Letzte Änderung: 24.03.10 - 10:18:50 von Driri »

Offline LukasSChl

  • Junior Mitglied
  • **
  • Beiträge: 68
  • Geschlecht: Männlich
Re: View = firstDocument Error ! Need help plz
« Antwort #11 am: 24.03.10 - 10:48:23 »
Code
		
Set oDb = oSession.CurrentDatabase
Set oView = oDb.GetView( "($LfdNr)" )
Set oDocView = oView.GetFirstDocument    
		
If Not (oDocView Is Nothing) Then
   Messagebox ("letzte lfdNr + 1")
   oDoc.LfdNr = oDocView.LfdNr(0) + 1
Else
   Messagebox ("dieses ist das erste Dokument")
   oDoc.LfdNr = 1
End If

Es funktioniert jetzt auch soweit, dass sich die Maske öffnet, die Felder jedoch nicht editierbar sind (werden auch garnicht angezeigt)

Hab es mit
Code
   source.Editmode = True			
   oDoc.BearbEin = oSession.CommonUsername
   oDoc.Status = "01 - Einlieferung in Bearbeitung"
   Call source.RefreshHideFormulas
versucht, bringt aber leider auch nix.

mfg Lukas

@Diri
ja das stimmt, aber das ist mir erstmal nicht wichtig, hauptsache ich bekomme das Gesamtkonstrukt ans laufen, mit der Nummer überleg ich mir dann später noch was.
« Letzte Änderung: 24.03.10 - 10:59:18 von LukasSChl »
Informatikkaufmann-Azubi (3tes Lehrjahr)
Lotus Notes Server: 8 * 8.0.2
Lotus Notes Clients: ca. 1800 * 8.0.2
Dienstags außer Haus

Offline ascabg

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.697
  • Geschlecht: Männlich
Re: View = firstDocument Error ! Need help plz
« Antwort #12 am: 24.03.10 - 11:01:50 »
Welche Maske?

Andreas

Offline Axel

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: View = firstDocument Error ! Need help plz
« Antwort #13 am: 24.03.10 - 11:03:28 »
Du wirfst hier Back- und Frontendfunktionen durcheinander.

Eine Möglichkeit wäre z.B.

source.Editmode = True
source.FieldSetText("BearbEin", oSession.CommonUsername)
source.FieldSetText("Status", "01 - Einlieferung in Bearbeitung")
Call source.Refresh


Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline LukasSChl

  • Junior Mitglied
  • **
  • Beiträge: 68
  • Geschlecht: Männlich
Re: View = firstDocument Error ! Need help plz
« Antwort #14 am: 24.03.10 - 11:04:42 »
@  ascabg
Die Maske (Werte), ist eine Eingabemaske für neue Datensätze.
Durch einen button wird diese aufgerufen und im Postopen event steht der Code um den es hier geht.
Nur leider kann ich die Felder nicht bearbeiten und die werden auch nichtma angezeigt, nur die automatisch befüllten Felder zeigen Werte an.

@Axel
ich teste^^ vielen dank erstma
EDIT: leider ohne Erfolg, auch wenn ich die Felder so anspreche, bekomm ich die Maske leider ohne die Möglichkeit zu editieren, was aber gehen soll

mfg Lukas
« Letzte Änderung: 24.03.10 - 11:11:42 von LukasSChl »
Informatikkaufmann-Azubi (3tes Lehrjahr)
Lotus Notes Server: 8 * 8.0.2
Lotus Notes Clients: ca. 1800 * 8.0.2
Dienstags außer Haus

Offline ascabg

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.697
  • Geschlecht: Männlich
Re: View = firstDocument Error ! Need help plz
« Antwort #15 am: 24.03.10 - 11:17:48 »
Frage anders.

Wie sieht denn der Code im Button aus, mit dem Du die Maske aufruft und zum Bearbeiten oeffnen willst?


Andreas

Offline LukasSChl

  • Junior Mitglied
  • **
  • Beiträge: 68
  • Geschlecht: Männlich
Re: View = firstDocument Error ! Need help plz
« Antwort #16 am: 24.03.10 - 11:21:20 »
@Command([Compose];"(Werte)")

daran sollte es nicht liegen, ich habe eine "Vorlage" in der der Button Code, genau gleich sind, und da öffnet er die Maske und lässt mich die Felder editieren
mfg Lukas
« Letzte Änderung: 24.03.10 - 11:24:44 von LukasSChl »
Informatikkaufmann-Azubi (3tes Lehrjahr)
Lotus Notes Server: 8 * 8.0.2
Lotus Notes Clients: ca. 1800 * 8.0.2
Dienstags außer Haus

Offline LukasSChl

  • Junior Mitglied
  • **
  • Beiträge: 68
  • Geschlecht: Männlich
Re: View = firstDocument Error ! Need help plz
« Antwort #17 am: 24.03.10 - 11:34:37 »
OK hat sich geklärt, musste Notes neustarten um die Rollen zu aktualieseiren.

Die Rollen sind in der "Absatz verbergen wenn Formel wahr ist"

eingebaut.

Jetzt klappt alles.

Vielen Dank für eure Hilfe.

--closed--
« Letzte Änderung: 24.03.10 - 15:06:03 von LukasSChl »
Informatikkaufmann-Azubi (3tes Lehrjahr)
Lotus Notes Server: 8 * 8.0.2
Lotus Notes Clients: ca. 1800 * 8.0.2
Dienstags außer Haus

Offline koehlerbv

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: View = firstDocument Error ! Need help plz
« Antwort #18 am: 25.03.10 - 01:25:22 »
Liebe AtNotes-User, die Ihr später mal über diesen Thread stolpert: Natürlich kann man auf die hier bislang beschriebene Art und Weise keine eindeutigen Nummern erzeugen. Ich kann mich hier meinen Vorrednern nur nochmals anschliessen.

Bernhard

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz