Das Notes Forum

Domino 9 und frühere Versionen => ND7: Entwicklung => Thema gestartet von: Jens_1 am 07.07.09 - 14:04:01

Titel: "Type mismatch" bei Agenten
Beitrag von: Jens_1 am 07.07.09 - 14:04:01
Hallo NG,

wenn ich folgenden Code in einem Agenten manuell ausführe funktioniert alles ganz wunderbar.
Lasse ich den Agenten laufen, dann bricht das Script immer mit oben genannter Fehlermeldung bei der Forall-Anweisung ab.
In der Hilfe konnte ich nichts darüber lesen, daß die Schleife bei einem zeitgesteuerten Agenten anders zu prgrammieren ist als bei einem manuellen Agenten.

Was mache ich denn da falsch?

Gruß
 Jens

Code
' Namen der Agenten auslesen und im Array "agname" speichern	
			Forall c In sdbs.Agents
				If c.trigger = 1 Then
					If c.IsEnabled = True Then
						Redim Preserve agname(count)
						agname(count) = c.name
						count = count + 1
					End If
				End If
			End Forall
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: Thomas Schulte am 07.07.09 - 14:22:57
wie ist dein c definiert?
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: Jens_1 am 07.07.09 - 14:38:20
Garnicht!
Wenn ich das vorher als NotesAgent definiere, dann sagt mir der Designer beim speichern "FORALL alias varialbe was previously declared: C".
Da ich nicht sicher bin, ob das definiert werden muss oder nicht habe ich nach der Fehlermeldung diese Variante auch ausprobiert.

Gruß
Jens
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: ascabg am 07.07.09 - 14:40:33
Hallo,

Ich glaube die Variablen, die bei Forall verwendet werden, duerfen vorher gar nicht definiert werden.

@Jens_1
Wann genau steigt Dein Code denn aus?

Ich habe einen kleinen Testagenten geschrieben, und der functioniert bei mir ohne Probleme.


Andreas
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: jBubbleBoy am 07.07.09 - 14:53:33
Vielleicht gibt es keine Agents in einem Fall
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: Gandhi am 07.07.09 - 14:55:36
Debuggern hilft oft...
Was steht denn in sdbc.agents im Debugger?
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: atbits am 07.07.09 - 15:05:50
Prüfe doch mal mit
Code
if isArray(sdbs.Agents)
ob es überhaupt ein Array gibt

Denn wenn keine Agenten, dann kein Array, dann kachelt der Code ab

Grüße David
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: Jens_1 am 07.07.09 - 15:09:51
Hallo,

Ich glaube die Variablen, die bei Forall verwendet werden, duerfen vorher gar nicht definiert werden.

@Jens_1
Wann genau steigt Dein Code denn aus?

Ich habe einen kleinen Testagenten geschrieben, und der functioniert bei mir ohne Probleme.


Andreas

So hatte ich das auch verstanden.
Das Script steigt genau bei "Forall c In sdbs.Agents" aus.

Gruß
Jens
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: Jens_1 am 07.07.09 - 15:12:08
Debuggern hilft oft...
Was steht denn in sdbc.agents im Debugger?

Der Debugger sagt mir, daß insegsamt 11 Agenten in diesem Datenbankobjekt stecken.
Wie gesagt - wenn ich den Agenten manuell starte funktioniert das auch reibungslos..

Gruß
Jens
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: jBubbleBoy am 07.07.09 - 15:17:29
Woher weißt du das er bei der forall Schleife abbricht?
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: dirk_2909 am 07.07.09 - 15:28:06
Ändere Deinen Code mal folgendermaßen ab (Die Schleifenvariable ist für Notes ein Variant und
kennt die jeweiligen Methoden nicht):

Code
'Namen der Agenten auslesen und im Array "agname" speichern	
Dim c as NotesAgent
Forall ctmp In sdbs.Agents
        Set c = ctmp   
	If c.trigger = 1 Then
		If c.IsEnabled = True Then
			Redim Preserve agname(count)
			agname(count) = c.name
			count = count + 1
		End If
	End If
End Forall
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: jBubbleBoy am 07.07.09 - 15:35:45
@Dirk: Das löst aber nicht das Problem

Das Debuggen war eigentlich Sinnlos, denn lokal geht es ja nur beim Server läuft er gegen die Wand, um ein ordentliches Errorhandling kommst du nicht drum herum.
Hast Du so etwas im Einsatz?
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: ascabg am 07.07.09 - 15:38:42
@dirk_2909
Zitat
Ändere Deinen Code mal folgendermaßen ab (Die Schleifenvariable ist für Notes ein Variant und
kennt die jeweiligen Methoden nicht)
 ???

Der folgende Code funktioniert bei mir ohne Probleme. Und agt ist nicht definiert und kennt alles aus der Klasse "NotesAgent".
Code
	Dim ses As New NotesSession
	Dim db As NotesDatabase
	
	Set db = ses.CurrentDatabase
	Forall agt In db.Agents
		'Msgbox agt.Name
		Print agt.Name
	End Forall

@Jens_1
Was sind denn das fuer Agenten?
Wenn Du mit dem Debugger arbeitest, dann hast Du ihn ja manuell gestartet.

Was passiert, wenn Du Deinen Agenten wie gewollt "periodisch" startest und einmal mit einem Print-Befehl "protokollierst".

Andreas
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: jBubbleBoy am 07.07.09 - 16:43:24
Was passiert, wenn Du Deinen Agenten wie gewollt "periodisch" startest und einmal mit einem Print-Befehl "protokollierst".

Print ist aber ein unsauberes und ungenaues Errorhandling, würde ich nicht empfehlen.
Arbeite mit on error und err, erl, error und resume, bei Fragen dazu helfen wir dir gern.
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: Jens_1 am 07.07.09 - 17:54:30
Hallo,

den Fehler fange ich ab wie folgt:

Code
On Error Goto ErrHandler

[...]

ErrHandler:
	' Eintrag in's Log machen
	Call currentLog.LogError( 0, "Der Fehler mit der Nummer" & Str(Err) & " und der Meldung " & Chr$(34) & Error$ & Chr$(34) & " ist bei Zeile " & Str(Erl) & " aufgetreten.")
Exit Sub

Daher weiss ich, daß das Script genau in der Zeile mit der Schleife abbricht.

Die Agenten in der Datenbank sind diverse Agenten deren Funktion mir nicht im Detail bekannt ist.
Imho ist das aber auch nicht relevant um deren Namen auszulesen?

Gruß
 Jens
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: Axel am 07.07.09 - 18:37:55
Mal eine ganz triviale Frage. Die ID mit dem der Agent signiert ist hat ausreichende Rechte auf die Datenbank?

Axel
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: Jens_1 am 07.07.09 - 18:40:36
Mal eine ganz triviale Frage. Die ID mit dem der Agent signiert ist hat ausreichende Rechte auf die Datenbank?

Axel


Auf jeden Fall! das habe ich bereits gecheckt.
Aber ich denke bei fehlender Berechtigung wäre die Fehlermeldung auch eine andere.

Gruß
Jens
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: TRO am 07.07.09 - 21:04:10
Was liefert denn

TypeName ( sdbs.Agents )

bzw.

DataType ( sdbs.Agents )

zurück?
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: Jens_1 am 08.07.09 - 06:45:40
Was liefert denn

TypeName ( sdbs.Agents )

bzw.

DataType ( sdbs.Agents )

zurück?


Hab's gerade mal ausprobiert:

Print Typename (sdbs) = NOTESDATABASE
Print Datatype (sdbs) = 35

Das ist eigentlich auch genau das was ich erwartet habe.

Gruß
Jens
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: Jens_1 am 08.07.09 - 06:53:15
[...]

Der folgende Code funktioniert bei mir ohne Probleme. Und agt ist nicht definiert und kennt alles aus der Klasse "NotesAgent".
Code
	Dim ses As New NotesSession
	Dim db As NotesDatabase
	
	Set db = ses.CurrentDatabase
	Forall agt In db.Agents
		'Msgbox agt.Name
		Print agt.Name
	End Forall

[...]

Hmm - ich habe den Code gerade mal simpel in einen neuen Agenten der Datenbank gepackt und scheduled.
Null Problem!
Also kann's schon mal nichts mit dem Server oder Berechtigungen oder ähnliches sein.

Was mir aufgefallen ist:
Während hier die aktuelle Datenbank instanziert wird instanziere ich ja eine enhtfernte bzw. andere Datenbank.
Mache ich da was falsch?

Ich habe mal den kompletten Code bis zum betreffenden Teil eingefügt:

Code
	On Error Goto ErrHandler
	
	Dim session As New NotesSession		' aktuelle Sitzung
	Dim db As NotesDatabase		' Datenbank in der das Script läuft
	Dim shosts_array (1 To 2) As String	' Array mit Namen der Server welche die Quelldatenbanken die ausgewertet werden sollen hosten
	Dim sdbs_array (1 To 2) As String	                ' Array mit Namen und Pfaden der Quelldatenbanken die ausgewertet werden sollen
	Dim sdbs As NotesDatabase		' Quelldatenbanken
	Dim currentLog As NotesLog		' Logmechanismus
	Dim count As Integer			' Zähler für die Schleife zum Auslesen der Agenten
	Dim agname () As String		' Array mit den Namen der Agenten
	
	[...]
	
	Set db = session.CurrentDatabase
	Set currentLog = New NotesLog ( db.Title )
	Call currentLog.OpenNotesLog( db.Server, db.FilePath )
	
	'Quellserver
	shosts_array(1) = "server1/ou/o/c"
	shosts_array(2) = "server2/ou/o/c"
	
	' Datenbanken die ausgewertet werden sollen festlegen
	' Die Datenbanken liegen auf beiden Servern im gleichen Pfad
	sdbs_array(1) = "pfad\datenbank1.nsf"
	sdbs_array(2) = "pfad\datenbank2.nsf"
		
	Forall a In shosts_array
	 Forall b In sdbs_array			
	  Set sdbs = New NotesDatabase (a, b)
	
	count = 0
			
' Namen der Agenten auslesen und im Array "agname" speichern	
			
	Forall c In sdbs.Agents
	 If c.trigger = 1 Then
	  If c.IsEnabled = True Then
	   Redim Preserve agname(count)
	   agname(count) = c.name
	   count = count + 1
	  End If
	 End If
	End Forall

	[...]

Gruß
Jens
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: ascabg am 08.07.09 - 08:40:35
Da dieses nun doch nicht ganz unwichtige Detail erst jetzt zur Sprache kommt, mal eine ganz andere Frage.

Serveruebergreifende Agenten sind schon zulaessig?


Andreas
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: Jens_1 am 08.07.09 - 09:03:37
Ja.
Da bin ich zunächst auch drüber gestolpert - die beiden Server sind im jeweiligen Serverdokument als vertrauenswürdige Server eingetrage.
Anderenfalls erhält man eine Fehlermeldung bezüglich fehlender Rechte.

Guxt Du hier:
"Set sdbs = New NotesDatabase (a, b)" funktioniert nicht wenn Agent scheduled (http://atnotes.de/index.php/topic,45653.0.html)

Gruß
Jens
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: dirk_2909 am 09.07.09 - 09:53:00
Zitat
@dirk_2909
Zitat
Zitat
Ändere Deinen Code mal folgendermaßen ab (Die Schleifenvariable ist für Notes ein Variant und
kennt die jeweiligen Methoden nicht)
 Huh

Der folgende Code funktioniert bei mir ohne Probleme. Und agt ist nicht definiert und kennt alles aus der Klasse "NotesAgent".
Code:

   
Code
Dim ses As New NotesSession
	Dim db As NotesDatabase
	
	Set db = ses.CurrentDatabase
	Forall agt In db.Agents
		'Msgbox agt.Name
		Print agt.Name
	End Forall

sorry.. gilt nur bei selbstgeschriebenen Klassen. Mein Fehler
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: Jens_1 am 16.07.09 - 08:17:07
Guten Morgen!

Ich habe mal wieder etwas an meinem Agenten gearbeitet und mir ist folgendes aufgefallen:
Wenn das Datenbankobjekt, welches die Forall-Schleife durchläuft, auf die den Agenten beinhaltende Datenbank gesetzt wird (also: Set sdbs = session.CurrentDatabase), dann läuft das Script auch via Scheduler einwandfrei durch.
Setze ich das Datenbankobjekt wieder auf eine "entfernte" Datenbank (also: Set sdbs = New NotesDatabase (a, b)), dann gibt's wieder den Fehler.

Via

Code
ErrHandler:
	' Eintrag in's Log machen
	Call currentLog.LogError(0, "Der Fehler mit der Nummer" & Str(Err) & " und der Meldung " & Chr$(34) & Error$ & Chr$(34) & " ist bei Zeile " & Str(Erl) & " aufgetreten.")
	Call currentLog.LogError(0, "Inhalte: " & sdbs.Title)
	Exit Sub

habe ich überprüft ob das Datenbankobjekt sdbs überhaupt gesetzt ist. Davon gehe ich aus da in der Fehlermeldung der Titel der jeweiligen Datenbank (bzw. ersten Datenbank in der Schleife) angezeigt wird.

Also muss mein Ansatz die Liste der Agenten aus einer anderen Datenbank auszulesen wohl falsch sein. Ich bin mir aber sicher, daß das möglich ist.
Wie macht Ihr denn das?

Gruß
Jens
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: jBubbleBoy am 16.07.09 - 09:07:40
Mach mal ein:
Code
dim db as new notesdatabase("","")
db.open(server, db)
Titel: Ich krieg ne' Macke!
Beitrag von: Jens_1 am 21.07.09 - 11:22:46
Ich krieg's einfach nicht hin!  >:(

Setze ich da ein
Code
Call sdbs.open (a, b)
ein, kriege ich die Fehlermeldung, daß die Datenbank bereits geöffnet ist.
Lasse ich den Absatz weg, kriege ich den Type mismatch.

Ich habe die Quellserver und -Datenbanken jetzt mal als Liste und nicht als Array definiert. Hat aber leider nix geändert.

Hier noch mal mein aktueller Code:

Code
Sub Initialize
	On Error Goto ErrHandler
	
	Dim session As New NotesSession		' aktuelle Sitzung
	Dim db As NotesDatabase						' Datenbank in der das Script läuft
	Dim shosts_list List As String					' Liste mit Namen der Server welche die Quelldatenbanken die ausgewertet werden sollen hosten
	Dim sdbs_list  List As String					' Liste mit Namen und Pfaden der Quelldatenbanken die ausgewertet werden sollen
	Dim sdbs As New NotesDatabase	("", "")' Quelldatenbanken
	
	Set db = session.CurrentDatabase
	Set currentLog = New NotesLog ( db.Title )
	Call currentLog.OpenNotesLog( db.Server, db.FilePath )
	
	'Quellserver
	shosts_list(1) = "server"
	shosts_list(2) = "server"
	
	' Datenbanken die ausgewertet werden sollen festlegen
	' Die Datenbanken liegen auf beiden Servern im gleichen Pfad
	sdbs_list(1) = "pfad\filename.nsf"
	sdbs_list(2) = "pfad\filename.nsf"
	
	Forall a In shosts_list
		Forall b In sdbs_list			
			Call sdbs.open (a, b)
			
' Namen der Agenten auslesen und im Array "agname" speichern	
			Forall c In sdbs.Agents
				If c.trigger = 1 Then
					If c.IsEnabled = True Then
						Redim Preserve agname(count)
						agname(count) = c.name
						count = count + 1
						Print sdbs.Title & " " & c.name
					End If
				End If
			End Forall
		End Forall
	End Forall
	
	Exit Sub
	
	
	
ErrHandler:
	' Eintrag in's Log machen
	Call currentLog.LogError(0, "Der Fehler mit der Nummer" & Str(Err) & " und der Meldung " & Chr$(34) & Error$ & Chr$(34) & " ist bei Zeile " & Str(Erl) & " aufgetreten.")
	Call currentLog.LogError(0, "Inhalte: " & sdbs.Title)
	Exit Sub
End Sub

Wo mache ich da Mist???????
So langsam weiß ich nicht mehr weiter.....  ???

Gruß
Jens
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: DAU-in am 21.07.09 - 11:42:30
if not db.open then
 call db.open
end if

ist die DB im Debugger denn geöffnet = kannst du (sinnvolle) Eigenschhaften lesen?
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: Jens_1 am 21.07.09 - 11:57:27
Werde ich gleich noch mal ausprobieren.
Aber müsste ein entfernen des
Code
Call sdbs.open (a, b)
nicht den gleichen Effekt haben wie die Abfrage?

Wenn ich den Agenten manuell starte funktioniert er einwandfrei und die Datenbanken werden im Debugger auch mit allen Eigenschaften angezeigt.

Starte ich scheduled sehe ich an der Fehlerroutine, daß die Variable sdbs.Title gesetzt ist...

Gruß
Jens
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: Jens_1 am 21.07.09 - 12:04:40
if not db.open then
 call db.open
end if

ist die DB im Debugger denn geöffnet = kannst du (sinnvolle) Eigenschhaften lesen?

Bringt nüscht  :'(
Leider kommt dabei auch nur wieder ein Type mismatch raus....

Gruß
Jens
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: atbits am 21.07.09 - 12:48:58
Was sagt denn das Serverlog auf dem Zielserver wo du die db öffnen willst?

Kann der Server auf dem der Agent läuft überhaupt auf diesen Server zugreifen (Stichwort Trusted Server und Verbindungsdokument)?

Grüße David
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: Jens_1 am 21.07.09 - 13:18:28
Was sagt denn das Serverlog auf dem Zielserver wo du die db öffnen willst?

Kann der Server auf dem der Agent läuft überhaupt auf diesen Server zugreifen (Stichwort Trusted Server und Verbindungsdokument)?

Grüße David

Ja, das hatte ich alles schon gecheckt da diese Hinweise schon kamen.
Ich denke, wenn es ein Berechtigungsproblem wäre dann wär die Fehlermeldung eine andere...

Gruß
 Jens
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: Jens_1 am 22.07.09 - 08:16:09
Verzweifelter Crosspost nach:
IBM Notes/Domino 6 and 7 Forum (http://www-10.lotus.com/ldd/nd6forum.nsf/DateAllThreadedweb/752a1a6168d661ce852575fb002261f8?OpenDocument)

Gruß
Jens
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: gossifu am 22.07.09 - 15:38:59
Darf der Server auf die Datenbanken (ACL) zugreifen? Zugriff auf den Server ist ja nur eine Ebene.
Wenn manuell, dann arbeitet der Agent mit Deinen Rechten.

mfg

Kjeld

Edit: Check das mal mit 'Effektiver Zugriff' und nicht nur für die ID mit der der Agent unterzeichnet ist, sondern auch ür den Server der zugreifen will.
Wenn es nicht der Quellcode ist, dann sind es die Rechte.
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: Jens_1 am 23.07.09 - 06:54:10
Darf der Server auf die Datenbanken (ACL) zugreifen? Zugriff auf den Server ist ja nur eine Ebene.
Wenn manuell, dann arbeitet der Agent mit Deinen Rechten.

mfg

Kjeld

Edit: Check das mal mit 'Effektiver Zugriff' und nicht nur für die ID mit der der Agent unterzeichnet ist, sondern auch ür den Server der zugreifen will.
Wenn es nicht der Quellcode ist, dann sind es die Rechte.

Nach wie vor glaube ich nicht an ein Berechtigungsproblem.
Die Zeile "Call currentLog.LogError(0, "Inhalte: " & sdbs.Title)" schreibt mir ja den Titel der gerade verarbeiteten Datenbank in's Fehlerlog.
Würde die Berechtigung nicht stimmen dürfte das Script imho ja gar nicht auf die Eigenschaften des Objektes zugreifen.
Ich bin überrascht, daß diese Aufgabe so ein schwieriger Hammer ist...  ???

Gruß
Jens
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: TRO am 23.07.09 - 07:52:24
Nach wie vor glaube ich nicht an ein Berechtigungsproblem.
Die Zeile "Call currentLog.LogError(0, "Inhalte: " & sdbs.Title)" schreibt mir ja den Titel der gerade verarbeiteten Datenbank in's Fehlerlog.
Würde die Berechtigung nicht stimmen dürfte das Script imho ja gar nicht auf die Eigenschaften des Objektes zugreifen.
Ich bin überrascht, daß diese Aufgabe so ein schwieriger Hammer ist...  ???

Gruß
Jens
Es wird aber doch ein Rechteproblem sein. Die Eigenschaft "Title" des Datenbank-Objektes kann nämlich auch ausgelesen werden, wenn das Datenbankobjekt NICHT geöffnet werden kann. Siehe Designerhilfe zu db.isOpen


Thomas
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: gstueb am 26.07.09 - 14:25:18

Code
		
	Forall a In shosts_array
	 Forall b In sdbs_array			
	  Set sdbs = New NotesDatabase (a, b)
	count = 0

Ist das so richtig? sdbs enthält so doch nur die DB des letzten shosts_array und des letzten sdbs_array. Der folgende Code, der sich auf das Objekt sdbs bezieht, behandelt demnach nur die letzte DB auf dem letzten Server.

Gruß,
Gregor
         
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: Jens_1 am 29.07.09 - 15:10:54

Ist das so richtig? sdbs enthält so doch nur die DB des letzten shosts_array und des letzten sdbs_array. Der folgende Code, der sich auf das Objekt sdbs bezieht, behandelt demnach nur die letzte DB auf dem letzten Server.

Gruß,
Gregor
         

Ich denke schon. Ich glaube, man nennt das eine iterative Schleife. Zuerst wird die innere Schleife durchlaufen und dann die äussere. In den Test's hat's funktioniert.
Ich bastele gerade an einer anderen Baustelle des Agenten.
Sobald ich das im Griff habe gebe ich Dir mal Rückmeldung ob das nu klappt oder nicht...

Gruß
Jens
Titel: Re: "Type mismatch" bei Agenten
Beitrag von: gstueb am 31.07.09 - 17:50:49

Ist das so richtig? sdbs enthält so doch nur die DB des letzten shosts_array und des letzten sdbs_array. Der folgende Code, der sich auf das Objekt sdbs bezieht, behandelt demnach nur die letzte DB auf dem letzten Server.
      

Ich denke schon. Ich glaube, man nennt das eine iterative Schleife. Zuerst wird die innere Schleife durchlaufen und dann die äussere. In den Test's hat's funktioniert.

Ich hatte beim überfliegen durch den falsch eingerückten Code übersehen, dass count = 0 und der Rest sich ja noch innerhalb der Schleife befinden. Dann passt's ja.

Code
	sdbs_array(1) = "pfad\datenbank1.nsf"
	sdbs_array(2) = "pfad\datenbank2.nsf"
		
	Forall a In shosts_array
	 Forall b In sdbs_array			
	  Set sdbs = New NotesDatabase (a, b)
	
	count = 0
			
' Namen der Agenten auslesen und im Array "agname" speichern	
			
	Forall c In sdbs.Agents