Das Notes Forum

Domino 9 und frühere Versionen => ND7: Entwicklung => Thema gestartet von: Blackraven am 14.02.08 - 12:16:15

Titel: Replace in LS
Beitrag von: Blackraven am 14.02.08 - 12:16:15
Hallo zusammen,

ich würde gerne die Replace-Funktion dazu benutzen innerhalb von Kalenderdokumenten die Domainen zu ändern.

Also z.B. aus "@ABC" sollte eigentlich "@ABCTV" werden.

Aber leider erkennt er auch vorhandene "@ABCTV" und möchte diese ersetzten -> REsultat: "@ABCTVTV"

Jemand nen Tip wie ich das anders machen könnte? Ich steh mal wieder aufm Schlauch :(

Gruß
Blackraven
Titel: Re: Replace in LS
Beitrag von: Glombi am 14.02.08 - 12:23:48
Das solltest Du bereits bei der Selektion der Dokument filtern. Also abfragen, ob in dem Feld bereits "@ABCTVTV" enthalten ist.

Andreas
Titel: Re: Replace in LS
Beitrag von: Blackraven am 14.02.08 - 12:25:34
ich hab leider 8 mögliche Felder, wo ich die Domänen ersetzen muss, da müßte ich ggfs. dann 8 Dokument-Selektionen machen :(
ausserdem kann ich nicht gewährleisten, das in einem Multi-Value Feld nicht beide Domänen drin sind :(
Titel: Re: Replace in LS
Beitrag von: dirk_2909 am 14.02.08 - 12:28:19
Du musst, bevor Du den Replace machst, prüfen, ob der String schon vorhanden ist:

if Not( InStr( strSource , "@ABCTV" ) >= 0 ) Then
    strSource = Replace( strSource , "@ABC" , "@ABCTV" )
end if
Titel: Re: Replace in LS
Beitrag von: DAU-in am 14.02.08 - 12:30:58
oder Ein evaluate mit @replace?

grüsse

Dau-in
Titel: Re: Replace in LS
Beitrag von: thomson666 am 14.02.08 - 15:04:11
bleibt eigentlich dir überlassen. ich finde wenn man LS macht sollte man es soweit wie möglich durchziehen (bei db.search gehts ja leider nicht anders...)
von Evaluate halte ich persönlich nicht viel.
Titel: Re: Replace in LS
Beitrag von: ata am 14.02.08 - 17:13:46
... manche Sachen sind mit einem Evaluate schneller  / einfacher - ich würde sie nicht generell meiden. Wie bist du zu deiner Haltung gekommen?

Toni
Titel: Re: Replace in LS
Beitrag von: Glombi am 14.02.08 - 17:21:20
Ich nutze Evaluate oft und bin froh, dass es das gibt. Natürlich kann man es nur nützlich einsetzen, wenn man die Formelsprache drauf hat.

Tipps gibts u.a. hier

http://www.ibm.com/developerworks/lotus/library/ls-The_Evaluate_statement/index.html

http://www.falsepositives.com/index.php/2006/06/22/using-lotusscript-evaluate-to-save-lots-and-lots-of-work/

Andreas
Titel: Re: Replace in LS
Beitrag von: DAU-in am 14.02.08 - 17:28:15
Ich habe in einem grossen Migrationsprojekt sehr viel mit Evaluate und @replace gearbeitet -
ging zackig und zuverlässig.
Alle Versuche mit der Replace Function sind irgendwann bei einem der 60.000 Dokumente in die Hose gegangen.

Grüsse

DAu-in