Hi @TheDarkSide and welcome to the SAS Support Communities!
Yes, there is an easy change: Just insert a suitable length specification into the second ARRAY statement.
To determine the "suitable" length, you can look at PROC CONTENTS output of your dataset (let's call it "have"):
proc contents data=have;
run;
The output contains a table like this:
Alphabetic List of Variables and Attributes
# Variable Type Len
2 age Num 8
1 id Char 3
3 ja1 Char 4
4 ja2 Char 10
5 ja3 Char 8
(I've made up a modified version of your example dataset with character variables ja1-ja3.)
Find the maximum of the lengths of the character variables in question (see column "Len" in the output). In the above example this is 10 (the maximum of 4, 10 and 8). Insert a dollar sign followed by this value (a larger value would work as well) into the second ARRAY statement:
array x{3} $10 _temporary_;
Of course, the array dimension, 3, would also need to be adapted if you had more than three character variables to be processed.
Please don't hesitate to ask if you have more questions. (And there's no reason to apologize for "simple" ones.)
Not sure why your question hadn't been answered earlier*. Maybe because your text somehow got into the code window (and didn't wrap properly because of a weakness of the forum software). But don't worry about that.
*EDIT: Okay, it had just been answered while I was still typing ...