Domino 9 und frühere Versionen > ND6: Entwicklung

bestimmten Index eines Arrays löschen

<< < (2/2)

theBastian:

--- Zitat von: LN4ever am 08.06.06 - 13:03:14 ---Das ist doch eigentlich der "klassische Einzeiler" - auf zwei Zeilen gestreckt, damit nur die Dokumente geändert werden, die das Feld enthalten.

@If(@IsUnavailable(Wertfeld);@Return("");NULL);
FIELD Wertfeld:=@Trim(@Unique(@Replace(Wertfeld;"Wert";"")))

--- Ende Zitat ---

Den genauen Wert habe ich ja nicht.
Weiß nur, wenn der Index mit 'Wert' beginnt, dann lösche diesen.

Sebastian

Axel:
Hier gibt's auch noch eine Lösung:

Remove Element From Array


--- Zitat von: SKL74 am 08.06.06 - 13:10:41 ---Den genauen Wert habe ich ja nicht.
Weiß nur, wenn der Index mit 'Wert' beginnt, dann lösche diesen.

--- Ende Zitat ---

Aber irgendwo gekommst du doch den Wert her, oder?

Axel

dirk_2909:
Versuch es mal so.

_wert := "deinwert" ;
_bListe :=  @Right( DeinFeld ; _wert ) ;
_replList := _wert + _bListe ;

_new := @Trim( @Replace( DeinFeld ; _replList ; "" ) ) ;

Field DeinFeld := _new ;


Natürlich musst Du die Formel umstrukturieren, damit sie in Evaluate passt ;-)

Dirk

theBastian:
Danke Euch allen, für die Hilfe.

Mein Code sieht jetzt so aus:


--- Code: ---Dim session As New NotesSession
Dim db As notesdatabase
Dim collection As NotesDocumentCollection
Dim doc As NotesDocument
Dim i As Integer
Dim strSoftwareEntry As String
Dim result As Variant
Set db = session.CurrentDatabase
Set collection = db.UnprocessedDocuments

Set doc = collection.GetFirstDocument()
While Not(doc Is Nothing)
For i = Lbound(doc.Feld) To Ubound(doc.Feld)
strSoftwareEntry = doc.Feld(i)
If Left$(strSoftwareEntry, 9) = "Wert" Then _
result =Fulltrim(Arrayreplace(doc.Feld, strSoftwareEntry , ""))
Next
doc.Feld = result
Call doc.Save( True, True )

Set doc = collection.GetNextDocument(doc)
Wend
--- Ende Code ---

Und das Beste: er macht das, was ich will.

cu
Sebastian

Navigation

[0] Themen-Index

[*] Vorherige Sete

Zur normalen Ansicht wechseln