View Full Version : Übergabeparameter im CL ohne Leerzeichen
Ich rufe ein CL auf mit Übergabeparameter
PGM PARM(&PARA)
DCL VAR(&PARA) TYPE(*CHAR) LEN(10)
Aus diesem muss ich nun einen Dateinamen generieren:
&PARA + ".xls"
CHGVAR VAR(&DATEI) VALUE &PARA!!'.xls')
Wenn Para nun weniger als 10 Zeichen hat (z.B. "AAA"), dann ist das Ergebnis: "AAA .xls"
Ich möchte aber "AAA.xls" als Inhalt der variablen.
Geht das?
Danke für eure Antworten
HS
kuempi von stein
25-08-08, 16:06
kann mal jemand die Kurbel drehen am Modem bitte?
Aber zurück zum Thema..
alles geht...
aber zeig mal den korrekten Code bitte... der CHGVAR hat Fehler, da fehlt die Klammer und und ich bin zu faul zum probieren.
k.
Und vorneweg, ein Call auf RPG wo nen *cat stattfindet wäre die schnellste Lösung
RobertMack
25-08-08, 16:29
CHGVAR VAR(&DATEI) VALUE(&PARA *TCAT '.xls')
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sorry, beim CHGVAR fehlte eine Klammer:
CHGVAR VAR(&DATEI) VALUE (&PARA!!'.xls')
*TCAT bringt das selbe Ergebnis wie !!
Das entscheidende sind die Leerzeichen, die ich nicht haben möchte.
D.h. ich möchte als Ergebnis AAA.xls - ohne Leerzeichen zwischen AAA und .xls.
Und die bekomme ich oben, weil die Variable 10 lang ist, ich aber nur 3 Zeichen benutze.
Das wäre mir neu, dass *TCAT nicht funktioniert.
Prüfe mal deine Variable bei kürzeren Werten, ob tatsächlich Blanks am Ende stehen (Hexausgabe).
Weiß nicht, wie man HEX-Ausgabe macht.
Aber der Wert enthält definitiv die Leerzeichen. Ich verwende diesen dann als Dateinamen für Emailversand, im Namen der Datei im Anhang sehe ich die Leerzeichen.
Hi,
um einen Hex-Wert im normalen STRDBG anzuzeigen musst Du beim Debug auf der Commando Zeile folgendes eingeben:
Eval MyVar:X
:X bewirkt, dass der Wert der Variablen als Hex-Wert angezeigt wird.
... ich benutze seit Jahren *TCAT und habe tatsächlich noch nie Probleme mit irgendwelchen *Blanks gehabt, die nicht reingehören.
Birgitta
Ok, war mein fehler. Hatte übersehen, dass das Programm gar nicht neu gewandelt wurde.
Klappt mit *TCAT.
Danke nochmal
HS