Yes this is supported. I just tested here with the following. The array must have a size and cannot just specify occurs any as this causes an error. BTW, EXEC SQL BEGIN DECLARE is not required when using OpenESQL.
01 company-name-str string occurs 5. 01 company-contact-str string occurs 5. 01 row-num pic s9(9) comp-5 value 5. procedure division. EXEC SQL CONNECT TO 'SQLADO32WA' END-EXEC EXEC SQL for :row-num SELECT A.CompanyName ,A.ContactName INTO :company-name-str ,:company-contact-str FROM dbo.Customers A END-EXEC goback.