|
Hi Debbie,
This is actually pretty straightforward:
1) add a DCL statement:
DCL VAR(") TYPE(*CHAR) LEN(1) VALUE(X'7D')
2) use the " field wherever you want to have a single quote:
CHGVAR &LIT1 VALUE('x' *CAT ")
(yields &LIT1 = x')
In general, wherever you have an oddball character that you want
to insert into a string, you can just define a field and assign it the hex
value of the character and then use the field wherever you need to.
(btw - I learned this trick back in my Wang Basic days, only there we
didn't use hex values we used ASCII equivalents. Same idea, and it's
one of the neatest tricks I know in any language!)
HTH,
Mike Naughton
MIDRANGE-L@midrange.com writes:
>Hello group,
>
>I have a question. I am trying to do a fromkey/tokey file copy
>inside a CL where the file key is packed. The key needs to look
>like this x'12345678901F'. I am doing a RCVF in the cl in order
>to get the actual key value but am having trouble putting the string
>together. Needing to have the single quote as part of the string is
>giving me problems. I am trying to declare the 3 parts and then
>concatinate them like this:
>
> DCL VAR(&LIT1) TYPE(*CHAR) LEN(2)
> DCL VAR(&NBR) TYPE(*CHAR) LEN(11) VALUE('12345678901')
> DCL VAR(&LIT2) TYPE(*CHAR) LEN(2)
>
> CHGVAR(&LIT1) VALUE( ) <====?
> CHGVAR(&LIT2) VALUE( ) <====?
> CHGVAR(&FROMKEY) VALUE(&LIT1 *CAT &NBR *CAT &LIT2)
>
>The value of LIT1 needs to be x'.
>The value of LIT2 needs to be F'.
>How can I move these values in using the CHGVAR command?
>
>
>Debbie
+---
| This is the Midrange System Mailing List!
| To submit a new message, send your mail to MIDRANGE-L@midrange.com.
| To subscribe to this list send email to MIDRANGE-L-SUB@midrange.com.
| To unsubscribe from this list send email to MIDRANGE-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: david@midrange.com
+---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.