Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: wuwu am 14.11.05 - 09:26:45

Titel: @right im Sript
Beitrag von: wuwu am 14.11.05 - 09:26:45
Hallo,

probiere jetzt schon 2 Stunden herum, komme aber nicht drauf,  ???

Wie setzte ich diese Formel in Scriptsprache um?

var:=@Right(Unique_ID;"-");
var2:=@Right(var;"-");

@Prompt([Ok];"Test";@Text(@TextToNumber(var2)+2))

unique_id ist ein Textfeld, hat folgende Einträge z.B.: FB-PP-1

Ich brauche die letzte Zahl & die Formel in Scriptsprache

Danke,
Mfg Horst
Titel: Re: @right im Sript
Beitrag von: Andreas Huhn am 14.11.05 - 09:37:09
Hallo Wuwu,

die Entsprechung zu @right ist die LS Funktion Right.

Zum Auffinden der "-" im String kannst du die Instr Funktion benutzen die dir numerisch die Stelle des Auftretens zurückgibt. Den Rückgabewert kannst du dann wiederum als Parameter für die Right Funktion verwenden.

Viele Grüße,

Andreas
Titel: Re: @right im Sript
Beitrag von: mrtachles am 14.11.05 - 09:38:28
Oder aber auch

   s = "Test-X-1"
   s1 = Strtoken(s,"-",3)

StrToken ist vergleichbar mit @word(...)

Gruss
Thomas
Titel: Re: @right im Sript
Beitrag von: koehlerbv am 14.11.05 - 09:40:20
Die Entsprechung von @Right in LS ist StrRight.

Bernhard
Titel: Re: @right im Sript
Beitrag von: Andreas Huhn am 14.11.05 - 09:48:01
Die Entsprechung von @Right in LS ist StrRight.

Bernhard

Ok. :)

@ Wuwu:
Wenn zwischen den Bindestrichen immer genau zwei Zeichen stehen und die Zahl am Ende ein- oder mehrstellig sein kann, dann weißt ja zumindest wieviele Zeichen im String nichts mit der Zahl zu tun haben (also 6 in dem Beispiel). Dann kannst mit len() die Anzahl der Zeichen ermitteln, davon 6 abziehen und weißt was du deiner StrRight Funktion als Parameter mitgeben mußt, damit sie dir die Zahl zurückgibt.
Titel: Re: @right im Sript
Beitrag von: HaPe am 14.11.05 - 09:50:42
oder so:

msgbox val(StrRight(Unique_ID,"-",1,2))+2

Gruß HaPe
Titel: Re: @right im Sript
Beitrag von: koehlerbv am 14.11.05 - 09:55:03
Wenn Horst allerdings die letzte Zahl (also "1" in seinem Beispiel) als Ergebnis benötigt, dann wäre Strrightback die richtige LS-Funktion. Dann wäre allerdings auch sein @Right nicht korrekt, sondern dort müsste es @RightBack heissen.

Bernhard
Titel: Re: @right im Sript
Beitrag von: wuwu am 14.11.05 - 10:11:30
Irgendwie check ich das heute nicht.

ich brauche praktisch die Zahlen nach dem 2 Bindestrich!

@left(Unique_ID;6) -> liefert mir genau den Wert

Warum haut das dann mit strleftback nicht hin?
Titel: Re: @right im Sript
Beitrag von: koehlerbv am 14.11.05 - 10:14:46
Was hat denn auf einmal @Left und Strleftback in diesem Thread zu suchen ?

Kannst Du bitte eindeutig formulieren, was die Ausgangsdaten und was das gewünschte Erbnis sind (konkretes Beispiel).

Bernhard
Titel: Re: @right im Sript
Beitrag von: wuwu am 14.11.05 - 10:18:28
Folgender Wert in Unique_ID:

FB-PB-5

Ich brauche im Script den Wert der hinter dem 2 Bindestrich steht in einer Variablen, also die Zahl 5.
Mit @left(Unique_ID;6) gibt er mir den Wert 5 aus.

Jetzt habe ich es mit StrLeftBack probiert, das funktioniert leider nicht.

Ich weis, ich stell mich heute dämlich an, schlechter Tag!

Danke trotzdem

Mfg Horst
Titel: Re: @right im Sript
Beitrag von: koehlerbv am 14.11.05 - 10:23:38
Ich habe keine Ahnung, was Du da machst, aber das Ergebnis von @Left ("FB-PB-5"; 6) ist "FB-PB-".

Ansonsten siehe bitte Posting #6.

Bernhard
Titel: Re: @right im Sript
Beitrag von: wuwu am 14.11.05 - 10:28:36
So jetzt hab ich, Gott sei Dank!

Strrightback(viewdoc.Unique_ID(0),"-",1,1)

Jetzt gibt er mir die Zahl nach dem letzten Bindestrich aus!

Danke trotzdem,
Mfg Horst
Titel: Re: @right im Sript
Beitrag von: koehlerbv am 14.11.05 - 10:31:02
Genau das stand in Posting #6 ...

Bernhard