The MASK conditional can be used to test for upper or lower case characters in an alphanumeric variable. REDEFINE the variable so that you can test character by character.
DEFINE DATA LOCAL
1 #M (I4) CONST <25>
1 #ALPHA (A25) INIT <'A1b2 C3d4 E5f6 G7h8 I9J0'>
1 REDEFINE #ALPHA
2 #A (A1/#M)
1 #U (I4)
1 #L (I4)
1 #I (I4)
END-DEFINE
FOR #I = 1 #M
DECIDE FOR FIRST CONDITION
WHEN #A (#I) = MASK (U)
ADD 1 TO #U
WHEN #A (#I) = MASK (L)
ADD 1 TO #L
WHEN NONE
IGNORE
END-DECIDE
END-FOR
DISPLAY (SG=F)
'String' #ALPHA
'Upper' #U
'Lower' #L
END