I was passing values to ARRAY_A based on some condition. However it
was not getting reflected in ARRAY_B. I just used another pointer to point
the alphanumeric to char and pointed that char to numeric. Then it went right.
DECLARE ARRAY_A(10) PIC '(4)X';
DECLARE ARRAY_B(10) CHAR(04) BASED(P);
DECLARE ARRAY_C(10) PIC '(4)9' BASED(Q);
DECLARE P POINTER;
P = ADDR(ARRAY_A);
DECLARE Q POINTER;
Q= ADDR(ARRAY_B);
Now the changes I made in ARRAY_A got reflected in ARRAY_C which was
my requirement.