PDA

View Full Version : Übergabeparameter im CL ohne Leerzeichen



hs
25-08-08, 15:49
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')

hs
25-08-08, 17:59
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

hs
25-08-08, 17:59
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.

Fuerchau
25-08-08, 18:14
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).

hs
25-08-08, 21:08
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.

B.Hauser
26-08-08, 05:51
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

hs
26-08-08, 07:47
Ok, war mein fehler. Hatte übersehen, dass das Programm gar nicht neu gewandelt wurde.

Klappt mit *TCAT.

Danke nochmal
HS