PDA

View Full Version : clp, verwendung von pipes



karin-vogelmann
22-08-03, 09:12
hi *all,

ich habe ein cl-programm vorliegen, in dem pipes verwendet werden. vermutlich als verbindungen zweier variablen wie z.b. *cat oder *bcat.
konkret wird verwendet:

|| (analog wie "!!" ?)
|<

weiß jemand, wie das zu übersetzen ist? zumal ich derzeit sysntaxfehler gemeldet bekomme, wenn ich die zeile prompten möchte. irgendwas ist halt nicht richtig eingestellt.

merci im voraus, karin

B.Hauser
22-08-03, 09:37
Hallo Karin,

im CL habe ich das noch nicht ausprobiert, aber im SQL und Query hat || die gleiche Bedeutung wie !! oder Conat.
|| ist sprachen abhängig!

Versuch mal || durch !! zu ersetzen. Notfalls durch einen *CAT.

Birgitta

Thimi
22-08-03, 11:09
Hallo Karin,
bei mir unter 4.4 moniert die CL-Sysntaxprüfung "||" bzw. "|<" .
Dagegen werden die Platzhalter "!!" bzw. "!<" angenommen. Siehe Beispiel:
Chgvar &Cmd Value('OPNQRYF File(Qry001) +
KeYfld((XXfirm) (XXwknr) (XXdisp) (XXtenr)) +
Qryslt('!< &QRY !< ')')


Gruss
Thierry

Erik Filchner
22-08-03, 12:17
Hi Karin,

ich habe die Pipezeichen auch schon in CL's verwendet.

Nachfolgend ein Auszug aus dem CL-Programmierhandbuch.


==============
Operatoren werden, im Gegensatz zu logischen Operatoren, in Ausdrücken verwendet, um anzugeben, daß eine Aktion für die Operanden im Ausdruck durchgeführt werden soll oder um die Beziehung zwischen den Operanden anzugeben. Außer den logischen Operatoren gibt es drei weitere Arten von Operatoren:

o arithmetische Operatoren (+, -, *, /)

o Zeichen (*CAT, ||, *BCAT, |>, *TCAT, |<)

o Vergleichsoperatoren (*EQ, =, *GT, >, *LT, <, *GE, >=, *LE, <=, *NE,
¬=, *NG, ¬>, *NL, ¬<)


Informationen zu diesen Operatoren enthält das Handbuch CL Reference.
====================

Ich habe allerdings auch nur mit den ! gearbeitet (anstelle des | Zeichens)

mfg Erik

Fuerchau
22-08-03, 12:32
Das Pipe-Zeichen ist leider Codepageabhängig und funktioniert nur unter CCSID 037, daher wird es vom SEU abgelehnt wenn z.B. mit CCSID 273 gearbeitet wird.

Um CCSID-unabhängig zu arbeiten sollte man die entsprechenden Funktionen (*CAT usw.) verwenden, auch wenn es etwas mehr Schreibarbeit bedeutet.

KM
22-08-03, 12:36
Hallo Karin,

!! entspricht dem *CAT
!< entspricht dem *TCAT
!> entspricht dem *BCAT

In der CL-Dokumentation steht wohl statt dem Ausrufezeichen ein | . Das dürfte falsch sein.

Gruß,
KM

karin-vogelmann
22-08-03, 12:38
hallo @ all!

vielen dank für die ganzen infos!

habe eben alles mal ausprobiert und klappt (natürlich) vorzüglich!

die pipes werde ich einfach durch "!" in meinem CL ersetzen.

allerdings werde ich für mich selbst auch weiterhin bei *cat&co bleiben...

gruß, karin