Domino 9 und frühere Versionen > ND6: Entwicklung

@year(@now) in Text umwandeln

(1/2) > >>

reraru:
Hallo zusammen!

Kurz vor dem verdienten Wochenende noch ein kleines Problem.

(Die Suchfunktion konnte mir leider nicht helfen!)

Ich möchte eine Variable "jahr" erzeugen, die das aktuelle Jahr enthält:

Ich möchte aber nur 05 bzw. 5 erhalten statt 2005 erhalten.


--- Code: ---str:= @Text(@Year(@Now));
str2:= @Right(str; 2);
jahr:= @TextToNumber(str2);

--- Ende Code ---

Was mache ich denn Falsch???
Man könnte natürlich auch alles in eine Zeile packen.

Wenn ich "jahr" über ein @prompt ausgebe, dann erhalte ich nichts
sichtbares.

Ich könnte vielleicht noch erwähnen das ich später die Variable "jahr" für
eine SQL Abfrage verwenden möchte.

Vielen Dank im Voraus!

Gruß René

Glombi:
@Prompt kann nur Text anzeigen. Deine Formel ist richtig.
Versuche
@Prompt([ok];"jahr";@Text(jahr))

Andreas

reraru:
Hi Glombi!

Dann muss irgendwo anders der Fehler sein:

Hier der komplette Code:


--- Code: ---
str:= @Text(@Year(@Now));
str2:= @Right(str; 2);
jahr:= @TextToNumber(str2);

sql1:= "SELECT SUM(UXNWEF) AS SUM FROM SRVAS01.ANCRADTA.UMSSTAL1 WHERE UXKDNR = " + kundennr + " AND UXERJJ = " + jahr ;

erg1:=@DbCommand("ODBC" ; "as400" ; "dbreader" ; "dbreader" ; sql1);

@prompt([ok]; "Umsatz laufend"; @Text(erg1))


--- Ende Code ---

Ich erhalte die Meldung:

"Falscher Datentyp für Operator oder @Funktion: Text erwartet"

Kundennr ist ein Feld in meinem Dokument (Typ: Zahl).

Glombi:
jahr ist eine Zahl, im SQL String brauchst Du aber Text:

str:= @Text(@Year(@Now));
str2:= @Right(str; 2);
jahr:= @TextToNumber(str2);

sql1:= "SELECT SUM(UXNWEF) AS SUM FROM SRVAS01.ANCRADTA.UMSSTAL1 WHERE UXKDNR = " + kundennr + " AND UXERJJ = " + @Text(jahr);


oder gleich so:

str:= @Text(@Year(@Now));
jahr:= @Right(str; 2);

sql1:= "SELECT SUM(UXNWEF) AS SUM FROM SRVAS01.ANCRADTA.UMSSTAL1 WHERE UXKDNR = " + kundennr + " AND UXERJJ = " + jahr;

Andreas

reraru:
Also Dein Vorschlag:

str:= @Text(@Year(@Now));
jahr:= @Right(str; 2);

sql1:= "SELECT SUM(UXNWEF) AS SUM FROM SRVAS01.ANCRADTA.UMSSTAL1 WHERE UXKDNR = " + kundennr + " AND UXERJJ = " + jahr;

erg1:=@DbCommand("ODBC" ; "as400" ; "dbreader" ; "dbreader" ; sql1);

@Prompt([Ok]; "Umsatz laufend"; @Text(erg1))

funktioniert leider nicht!

Das kann doch nicht sein!  :(

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln