1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
* Вопрос касается сцепления многих строковых переменных. Есть 22 переменных
* формата A1, допустим, a1, a2, a3, ..., a22.
* Мне нужно вычислить строку формата A43: 
* a = a1-a2-a3-....-a22.

* Как мне это сделать, не записывая:
  compute a = concat(a1, '-', a2, '-',..., a22).

* Ответ размещён в SPSSX-L 2.3.2004. Автор: Raynald Levesque.

DATA LIST FREE /a1 TO a22 (22A1). 
BEGIN DATA
a b c d e f g h i j k l m n o p q r s t u v 
b c d e f g h i j k l m n o p q r s t u v w
END DATA.
STRING a(A43).
VECTOR a=a1 TO a22.
LOOP cnt=1 TO 21.
- COMPUTE a=CONCAT(RTRIM(a),a(cnt),"-") .
END LOOP.
- COMPUTE a=CONCAT(RTRIM(a),a(22)) .
EXECUTE.

VARIABLE WIDTH  a (43).