Возвращает строчный или столбцевой индекс элемента массива исходя из его номера.
Синтаксис:
ASUBSCRIPT(ArrayName, nElementNumber, nSubscript)
Параметры:
ArrayName
Задает имя массива.
nElementNumber
Задает номер элемента.
nSubscript
Указывает, какой индекс следует возвратить ѕ строчный или столбцевой.
Если массив одномерный, укажите его номер nElementNumber и значение 1 в качестве nSubscript. Функция ASUBSCRIPT( ) просто возвратит nElementNumber.
Если массив двумерный, нужно задать и номер элемента nElementNumber, и значение 1 или 2 в качестве nSubscript. Значение 1 в nSubscript определяет возвращение строчного индекса элемента, а значение 2 возвращение столбцевого индекса.
Подробнее о том, как ссылаться на элементы массива, см. DIMENSION.
Результат:
Числовой
Комментарии:
Элемент двумерного массива переменных памяти можно указывать двумя способами: либо с помощью двух индексов, задающих позиции элемента в массиве по строкам и по столбцам, либо с помощью одиночного номера. Используйте функцию ASUBSCRIPT( ) для получения строчного или столбцевого индекса элемента по его номеру.
В следующем примере создается массив из двух строк и трех столбцов. Команда DISPLAY MEMORY показывает содержимое элементов массива в порядке их номеров.
DIMENSION gaMyArray(2,3) DISPLAY MEMORY LIKE gaMyArray GAMYARRAY Pub A ( 1, 1) L .F. (element number 1) ( 1, 2) L .F. (element number 2) ( 1, 3) L .F. (element number 3) ( 2, 1) L .F. (element number 4) ( 2, 2) L .F. (element number 5) ( 2, 3) L .F. (element number 6)
Следующие две команды сохраняют символьную строку INVOICE в одном и том же элементе массива:
STORE 'INVOICE' TO gaMyArray(2, 1) STORE 'INVOICE' TO gaMyArray(4)
В одномерных массивах номер элемента идентичен его строчному индексу. В этих случаях нет необходимости в применении функции ASUBSCRIPT( ).