21.09.2022 Айдар Фархутдинов 11196
Функции двумерных массивов

Содержание:

1.       Создание массива элементов

2.       Функции работы с массивами

3.       Использование двумерных массивов  

     

1.    Создание массива элементов


В данной статье будет описано что такое массивы и как работает массив в системе 1С, также будет подробно рассказано именно о двумерных массивах и об использовании двумерных массивов на примерах.


В системе 1С, как и в других платформах по программированию, есть такое понятие, как массив. Массив – это некоторая простейшая коллекция из значений, которая является простейшей единицей.


То есть, массив является набором некоторых элементов, которые имеют определённый порядок и стоят один за другим, доступ к каждому из элементов можно получить, зная его массивный индекс. В массиве элементы могут быть любого из возможных типов данных, в том числе и элементы с типом данных «Массив». Всем элементам из массива присваивается уникальный номер, такой номер именуется индексом. Если знать индекс элемента и название массива, то можно получить доступ к данному элементу. Так как одним из главных свойств массива является упорядоченность, то индекс первого элемента массива равен нулю, у второго – единицей и далее по порядку.


Чтобы сформировать новый массив, необходимо обратиться к конструктору системы 1С и напечатать «Новый», создание массива элементов происходит следующим образом:


Новый Массив (<КоличествоЭлементов1>…<Количество элементовN>).


Стоит отметить, что параметр «КоличествоЭлементов», который был показан выше, не является обязательным. Когда данный параметр один, то такой массив называют одномерным, если два параметра – это двумерный массив, если более двух, то такой массив называют многомерным.


К примеру, если есть следующая строка в программном коде:


, то это значит, что «Массив1» имеет 10 элементов и является примером одномерного массива.

Если же, есть следующая строка программного кода:


, то это значит, что это пример двумерного массива и он состоит из 6 элементов, можно представлять в виде таблицы, где первое значение – это количество строк, а второе – количество столбцов.


Если в массиве нет ни единого элемента, то его называют пустым массивом.

Также, стоит заметить, что в системе 1С есть ещё таблицы значений, однако, в отличии от них, с массивами можно работать и в тонком, и в толстом клиенте.


К примеру, пользователь создал некоторый массив, который не является пустым, в таком случае, элементы массива существуют, но не имеют значений. Взглянем на такой массив внутри отладчика системы 1С. Там можно увидеть, что около всех элементов имеется тип вида «Неопределено», как демонстрируется на скриншоте с примером ниже:



Неопределенно в массиве – коллекции значений   

 

2.    Функции работы с массивами


Рассмотрим основные функции работы с массивами.

Обращение к конкретному элементу массива происходит через индекс данного элемента, где индекс указывается в квадратных скобах, как показано ниже:



Функция работы с массивом – обращение к элементу

 

Можно обратить внимание на то, что каждый элемент из массива может иметь различный тип, даже ссылочный.

Если указать индекс элемента, то можно его задать, а можно и прочесть, как показано ниже:



Функция работы с массивом – задание типа

 

Индекс, который прописывается в квадратных скобах, не может быть больше, чем суммарное количество элементов, минус единица (ведь, индекс первого элемента – это ноль).


К примеру, пропишем следующий код в программе:



Предпосылка для ошибки Индекс находится за границами массива

 

По окончанию его выполнения, возникнет ошибка «Индекс находится за границами массива», как демонстрируется на скриншоте окна с ошибкой ниже:



Индекс находится за границами массива

 

В скобах указали значение 5, однако, массив имеет начало на нуле, значит, конечный индекс будет 4, поэтому данная формулировка не корректна.   


3.    Использование двумерных массивов


Рассмотрим то, какие стандартные операции можно проводить с массивами, в том числе, с двумерными:


·        Перебирать элементы в массиве. Данное действие можно выполнить двумя методами. Первый метод – это при помощи такого инструмента, который прозвали «китайский код», в этом случае, для каждого из элементов массива будет присвоено необходимое значение, это будет выглядеть следующим образом:



Использование двумерного массива – китайский код

 

Такое решение может применяться и быть полезно, однако, более часто встречается задача, в которой необходимо прочесть каждый из элементов массива, при помощи цикла. Таким образом, нужно внутри тела цикла пройтись по всем индексам. Такой способ перебора будет иметь следующий вид:



Использование двумерного массива для перебора

 

Либо, можно воспользоваться иным видом цикла, результат будет одинаков:



Цикл при использовании двумерного массива

 

·        Количество элементов в массиве. Такая операция тоже довольно полезна и часто встречается. Чтобы найти количество элементов в двумерном массиве, можно воспользоваться одним из двух способов. Первый – это задействовать метод «Количество()», а второй – задействовать метод «ВГраница()». В первом способе будет ответ в виде количества элементов внутри массива. А во втором случае ответ будет в виде максимального индекса данного массива, то есть – верхняя граница массива. В таком случае, для первого способа, перебор будет выглядеть так:



Пример - как найти количество элементов двумерного массива

 

Для второго способа программный код будет следующим:



Код чтобы найти количество элементов двумерного массива

 

·        Добавление элементов в массив. Данное действие можно осуществить при помощи двух методов, а именно: метод «Добавить()» и метод «Вставить()». Для первого метода, будет добавлен элемент в самый конец массива, после существующих элементов, а во втором случае – элемент будет вставлен в необходимый массивный индекс.



Добавление элементов в массив

 

В данном программном решении был, изначально, создан пустой массив, после чего, произошло добавление элементов в массив, первый, далее вставили ещё элемент, но на индекс ноль, а затем снова добавили, результатом будет следующее:



Пример добавления элементов в массив

 

·        Работа с многомерными массивами данных проходит аналогично, однако, не стоит забывать, что элементы в многомерном массиве – это также массивы. В многомерных массивах два и более параметров, к примеру: МассивМног1 = Массив(3,2,5). Тут был создан многомерный массив данных, который имеет три элемента, в каждом элементе-массиве находится по два массива с 5 элементами в каждом.


Рассмотрим двумерный массив следующий, его создание будет таким:



Пример двумерного массива для создания многомерного

 

Чтобы вывести в окно с сообщениями понадобится следующий программный код:



Программный код в многомерном массиве данных

 

Результатом выполнения которого будет сообщение, в котором будет отображен данный массив:



Пример двумерного массива - отображение

 

В данной статье было рассмотрено что такое массивы и как с ними работать в системе 1С, а также были определены различные базовые операции при использовании двумерных массивов.

 

Специалист компании «Кодерлайн»

Айдар Фархутдинов

Наши проекты

СТС-Медиа
СТС-Медиа

Отрасль:
Медиаиндустрия

Внедренное типовое решение:
1С:Управление холдингом

- Бухгалтерский учет;
- Налоговый учет;
- МСФО (GAAP/управленческий учет);
- ...

Компания IBS
Компания IBS

Отрасль:
Системный интегратор

Внедренное типовое решение:
1С:Управление производственным предприятием

- Интеграция систем – АСУП и «1С:Управление производственным предприятием»...

Группа компаний ТМ «Дружба народов»
Группа компаний ТМ «Дружба народов»

Отрасль:
Пищевая промышленность

Внедренное типовое решение:
1С:ERP Управление предприятием 2.1

- Переход на новый релиз 2.1 программы «1С:ERP Управление предприятием»
- Разра...

Внедрение ПП "1С:Управление небольшой фирмой 8 ПРОФ" в
ИП Любо Виктория Александровна (ООО «Рекреация»)

Отрасль:
Производство

Внедренное типовое решение:
1С:Управление небольшой фирмой 8 ПРОФ

Осуществлены разработки:
– отчета по спецификации Заказа;
– загрузки сп...

ООО «Вистеон Автоприбор Электроникс»
ООО «Вистеон Автоприбор Электроникс»

Отрасль:

Внедренное типовое решение:
1C:Управление производственным предприятием

- Управленческий учет; - Расчет зарплаты; - Логистика адресного склада; - Учет ...

Внедрение ПП "1С:Корпоративный инструментальный пакет 8" в ООО «Торговый Дом Факел»
ООО «Торговый Дом Факел»

Отрасль:
Производство

Внедренное типовое решение:
1С:Предприятие 8. ERP Управление предприятием 2

Различная отраслевая специфика:
- Переработка давальческого сырья
- Уче...

Автоматизации учета затрат и расчета себестоимости с использованием конфигурации «Koderline: Управление проектами строительства скважин»
ООО «Буровая сервисная компания «ГРАНД»

Отрасль:
Нефтесервис

Внедренное типовое решение:
«Koderline: Управление проектами строительства скважин»

Учет и планирование:
- собственную разработку компании «Кодерлайн» – конф...

ООО "НЦКТ"
ООО "НЦКТ"

Отрасль:
Профессиональные услуги

Внедренное типовое решение:
1С:Бухгалтерия 8 ПРОФ

Производственные операции
Автоматизация бизнес-процессов...

ООО "АСТАРМЕДИКА КЛИНИКА МИКРОХИРУРГИИ ГЛАЗА"
ООО "АСТАРМЕДИКА КЛИНИКА МИКРОХИРУРГИИ ГЛАЗА"

Отрасль:
Деятельность больничных организаций

Внедренное типовое решение:
БИТ:Управление медицинским центром 8

- Управление отношениями с клиентами (CRM)
- Делопроизводство
- Ведение но...

Внедрение блока бухгалтерского учета «1С:Управление производственным предприятием»
ОАО «Издательство «Просвещение»

Отрасль:
Производство

Внедренное типовое решение:
1С:Управление производственным предприятием

Бухгалтерский учет:
- Завершение периода;
- Регламентированная отчетнос...

ООО «ПКП КАБЭЛЕКТРОСНАБ»
ООО «ПКП КАБЭЛЕКТРОСНАБ»

Отрасль:
Производство кабельной продукции

Внедренное типовое решение:
1С:Управление небольшой фирмой 1.6

- Оформление заказов покупателей;
- Управление складскими запасами;
- Ана...

ПАО «АрселорМиттал Кривой Рог»
ПАО «АрселорМиттал Кривой Рог»

Отрасль:
Металлургическая промышленность

Внедренное типовое решение:
1С:Управление производственным предприятием для Украины

- Кадровый учет
- Расчет зарплаты
- Регламентированная отчетность
- Уч...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение