Как поместить результат запроса в двухмерный массив #585572


#0 by saf112
Здравствуйте. Суть в том, что мне нужно вывести в эксель результат запроса, вида "Номер опоры, Тип опоры". Я пытаюсь заполнить массив результатами выборки, перевести его в COMSafeArray и вывести в Range на листе. Проблема в том, что массив (2, н) -  не создается. А размерности я не знаю, этот код обернут еще в один цикл и прогоняется много раз. В общем задача вот в чем - я обхожу все ЛЭП (Линии электро передач) и для каждой из них печатаю паспорт в эксель. в частности в этом паспорте есть раздел с опорами - их у каждой линии множество, и я вот таким вышеописанным образом пытаюсь их вывести. Вот если че полный код - он не такой и большой
#1 by Defender aka LINN
Я может кого сейчас опечалю, но в 1С массивы одномерные.
#2 by saf112
тут же на мисте встретил такой код, с указанием того, что он рабочий: то есть, не такие они и одномерные)
#3 by Fish
Да неужели? :))) Читаем и удивляемся: А.П. Габец и Д.И. Гончаров (под редакцией М.Г. Радченко). "1С:Предприятие 8.1. Простые примеры разработки"    Как создать многомерный массив? Массив является линейной динамической коллекцией с произвольным типом значений. Поэтому значениями массива могут выступать другие массивы. То есть создание массива массивов и решает задачу создания многомерного массива. Это можно делать при использовании конструктора массива (листинг 2.3) или в процессе добавления очередных элементов к массиву (листинг 2.4).    Листинг 2.3. Создание многомерного массива    Листинг 2.4. Создание многомерного массива добавлением элементов И в том и в другом случае мы решим задачу создания двумерного массива размерностью 2х8. Чтение и запись значений такого массива можно производить посредством директивного указания индексов (листинг 2.5) или при помощи метода Получить (листинг 2.6).    Листинг 2.5. Чтение массива с указанием индексов элемента    Листинг 2.6. Чтение массива с помощью метода Получить Хотелось бы еще раз отметить, что создание массива определенной размерности конструктором ограничивает только количество возможных к заполнению значений массива, но не препятствует добавлению новых значений, в качестве которых могут выступать массивы произвольной размерности.
#4 by Fish
+ А еще инженер знаний. Стыдно должно быть :)))
#5 by saf112
то есть, мне просто юзать "Добавить"? сейчас нет возможности попробовать, но похоже на решение, спасибо)
#6 by acsent
ты с 77 попутал
#7 by Defender aka LINN
Может быть, может быть... Все равно яя ими не пользовался :)
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С