Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Thobz am 27.12.07 - 09:50:13

Titel: Array befüllt sich nicht richtig
Beitrag von: Thobz am 27.12.07 - 09:50:13
Guten Morgen zusammen,

ich hab da mal ein Problem. Per Schleife möchte ich ein Array befüllen lassen.
Das Dimensioniert sich auch richtig, bzw. auf die richtige Anzahl an Positionen.
Nur leider sind nur die erste und letzte befüllt und das auch noch gleich.
Hier mal der Code, ich weiß gerade nicht weiter.

Code
	Do While Not doc Is Nothing
		
		If entry Is Nothing Then
			Exit Do
		End If
		
		Set doc = entry.Document
		Set dtLiefer = New NotesDateTime( doc.lieferdatum(0) )
		Set dtHeute = New NotesDateTime( Now )
		
		Set dtLiefer = New NotesDateTime( doc.lieferdatum(0) )
		Set dtHeute = New NotesDateTime( Now )
		
		If dtHeute.TimeDifference(dtLiefer) > 0    Then
			
			If doc.AuftragErledigt(0)="0" Then
				Redim Ergebnis (counter)
				Filiale =  Left(Nummer,4)
				
				
				Ergebnis(counter)= doc.belegnr(0)
				counter=counter+1
				
				
			End If			
		End If
		
		Set entry= vc.GetNextEntry(entry)
		
		
	Loop

Gruß Thomas
Titel: Re: Array befüllt sich nicht richtig
Beitrag von: LN4ever am 27.12.07 - 09:58:28
Wie wäre es denn mit einem ReDim PRESERVE ?

Gruß

Norbert
Titel: Re: Array befüllt sich nicht richtig
Beitrag von: Thobz am 27.12.07 - 10:20:08
Hallo,

super vielen Dank. Jetzt funktioniert es.
Kannst du mir vielleicht noch sagen was genau das "Preserve" bewirkt,
in der Hilfe werde ich nicht ganz schlau daraus.

Thomas
Titel: Re: Array befüllt sich nicht richtig
Beitrag von: Skorpi am 27.12.07 - 10:35:02
Der Zusatz bewirkt, dass der bisherige Inhalt eines Arrays bei einer Änderung erhalten bleibt. Wenn der Zusatz Preserve fehlt, dann werden alle Elemente neu initialisiert.

Noch ein kleiner Hinweis zur Performance deines Codes. Im Redbook "Performance Considerations for Domino Applications" (siehe http://www.redbooks.ibm.com/redbooks/pdfs/sg245602.pdf (http://www.redbooks.ibm.com/redbooks/pdfs/sg245602.pdf) Seite 66) wird empfohlen die Nutzung von REDIMS zu minimieren. Besonders in Schleifen. Anstelle das Array bei jedem Durchlauf neu zu Dimensionieren, solltest du dir überlegen Blockweise vorzugehen.
Titel: Re: Array befüllt sich nicht richtig
Beitrag von: Thobz am 27.12.07 - 10:42:29
Hallo,

vielen Dank für deine Hilfe und deinen Tipp, werde direkt mal versuchen ihn anzuwenden.