Массив переменной длины в качестве выходного параметра

Delphi 2007. Стороннее ПО - в моем случае это сервер разрешительного режима в "Честном знаке", выполняющий проверку QR-кода - возвращает набор параметров, в том числе массив идентификаторов товарных групп, в общем случае, переменной длины. Этот массив необходимо преобразовать в стандартный динамический массив и передать другому классу для дальнейшей обработки.

В таком виде оно не работает

DelphiВыделить код

1
2
3
4

procedure test(out GroupArray: array of Integer);
begin
  SetLength(GroupArray, 2);
end;

Держать массив GroupArray в виде отдельной переменной класса, имхо, не очень красиво (тем более, что все остальные параметры возвращаются в виде выходных параметров процедуры), хотя и работает.

Каким образом можно задать размер такого массива?