+375 29 605 73 35
Заказать звонок
Минск, ул. Татарская 3, этаж 3, офис 315
Сопровождение информационных систем
Компания
  • О компании
  • Клиенты и партнеры
  • Сотрудники
  • Отзывы
  • Вакансии
  • Реквизиты
1С Предприятие
  • Автоматизация 1С : Предприятия 8
    • Предпроектное обследование
    • Разработка конфигурации с нуля
    • Внедрение 1С : Предприятие 8
    • Доработка и настройка 1С
  • Внедрение 1С
    • Комплекс работ по адаптации и настройке программных продуктов «1С
  • Демонстрация типовых решений 1с для Беларуси
    • 1С:Управление торговлей для Беларуси, редакция 3.4
    • 1С:Розница для Беларуси, редакция 2.2
    • 1С:Зарплата и Управление Персоналом для Беларуси, редакция 3.0
    • 1С:Бухгалтерия для Беларуси, редакция 2.1
    • 1С УНФ (Управление нашей фирмой)
    • 1С КА 2.4 ( Комплексная автоматизация)
  • Кейсы 1С
    • Расширенный список справочника контрагентов для Управление торговлей для Беларуси, редакция 3
    • Расширенный список справочника Контрагентов для Бухгалтерии для Беларуси, редакция 2
    • Расширенный список справочника Контрагентов для УТ ХьюменСистем
    • Внедрение программного обеспечения «1С: Предприятие 8. Бухгалтерия сельскохозяйственного предприятия»
    • Интеграция с маркетплейсами озон и валберис
  • Консультация по 1С
    • Разовое консультация ( 75.00 руб.коп)
    • Тарифные планы на сопровождение информационных систем
  • Построение аналитики и дашбордов
    • 1С Аналитика
    • Построение аналитики на Power BI
  • Продажа Битрикс24
Битрикс24
  • Готовые кейсы для битрикс24
  • Новости и статьи Битрик24
  • Попробовать бесплатно битрикс 24
  • Программы 1С
Информация
  • Новости
  • Статьи
Контакты
    Сопровождение информационных систем
    Компания
    • О компании
    • Клиенты и партнеры
    • Сотрудники
    • Отзывы
    • Вакансии
    • Реквизиты
    1С Предприятие
    • Автоматизация 1С : Предприятия 8
      • Предпроектное обследование
      • Разработка конфигурации с нуля
      • Внедрение 1С : Предприятие 8
      • Доработка и настройка 1С
    • Внедрение 1С
      • Комплекс работ по адаптации и настройке программных продуктов «1С
    • Демонстрация типовых решений 1с для Беларуси
      • 1С:Управление торговлей для Беларуси, редакция 3.4
      • 1С:Розница для Беларуси, редакция 2.2
      • 1С:Зарплата и Управление Персоналом для Беларуси, редакция 3.0
      • 1С:Бухгалтерия для Беларуси, редакция 2.1
      • 1С УНФ (Управление нашей фирмой)
      • 1С КА 2.4 ( Комплексная автоматизация)
    • Кейсы 1С
      • Расширенный список справочника контрагентов для Управление торговлей для Беларуси, редакция 3
      • Расширенный список справочника Контрагентов для Бухгалтерии для Беларуси, редакция 2
      • Расширенный список справочника Контрагентов для УТ ХьюменСистем
      • Внедрение программного обеспечения «1С: Предприятие 8. Бухгалтерия сельскохозяйственного предприятия»
      • Интеграция с маркетплейсами озон и валберис
    • Консультация по 1С
      • Разовое консультация ( 75.00 руб.коп)
      • Тарифные планы на сопровождение информационных систем
    • Построение аналитики и дашбордов
      • 1С Аналитика
      • Построение аналитики на Power BI
    • Продажа Битрикс24
    Битрикс24
    • Готовые кейсы для битрикс24
    • Новости и статьи Битрик24
    • Попробовать бесплатно битрикс 24
    • Программы 1С
    Информация
    • Новости
    • Статьи
    Контакты
      Сопровождение информационных систем
      • Компания
        • Назад
        • Компания
        • О компании
        • Клиенты и партнеры
        • Сотрудники
        • Отзывы
        • Вакансии
        • Реквизиты
      • 1С Предприятие
        • Назад
        • 1С Предприятие
        • Автоматизация 1С : Предприятия 8
          • Назад
          • Автоматизация 1С : Предприятия 8
          • Предпроектное обследование
          • Разработка конфигурации с нуля
          • Внедрение 1С : Предприятие 8
          • Доработка и настройка 1С
        • Внедрение 1С
          • Назад
          • Внедрение 1С
          • Комплекс работ по адаптации и настройке программных продуктов «1С
        • Демонстрация типовых решений 1с для Беларуси
          • Назад
          • Демонстрация типовых решений 1с для Беларуси
          • 1С:Управление торговлей для Беларуси, редакция 3.4
          • 1С:Розница для Беларуси, редакция 2.2
          • 1С:Зарплата и Управление Персоналом для Беларуси, редакция 3.0
          • 1С:Бухгалтерия для Беларуси, редакция 2.1
          • 1С УНФ (Управление нашей фирмой)
          • 1С КА 2.4 ( Комплексная автоматизация)
        • Кейсы 1С
          • Назад
          • Кейсы 1С
          • Расширенный список справочника контрагентов для Управление торговлей для Беларуси, редакция 3
          • Расширенный список справочника Контрагентов для Бухгалтерии для Беларуси, редакция 2
          • Расширенный список справочника Контрагентов для УТ ХьюменСистем
          • Внедрение программного обеспечения «1С: Предприятие 8. Бухгалтерия сельскохозяйственного предприятия»
          • Интеграция с маркетплейсами озон и валберис
        • Консультация по 1С
          • Назад
          • Консультация по 1С
          • Разовое консультация ( 75.00 руб.коп)
          • Тарифные планы на сопровождение информационных систем
        • Построение аналитики и дашбордов
          • Назад
          • Построение аналитики и дашбордов
          • 1С Аналитика
          • Построение аналитики на Power BI
        • Продажа Битрикс24
      • Битрикс24
        • Назад
        • Битрикс24
        • Готовые кейсы для битрикс24
        • Новости и статьи Битрик24
        • Попробовать бесплатно битрикс 24
        • Программы 1С
      • Информация
        • Назад
        • Информация
        • Новости
        • Статьи
      • Контакты
      • +375 29 605 73 35
      Минск, ул. Татарская 3, этаж 3, офис 315
      info@sectorsystem.by
      • Главная
      • Информация
      • Статьи
      • Чем отличаются массив, структура и соответствие в 1С

      Чем отличаются массив, структура и соответствие в 1С

      Чем отличаются массив, структура и соответствие в 1С

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



      Массив — упорядоченный список значений

      Массив — это простейшая коллекция, где элементы хранятся в строгом порядке и доступ к ним осуществляется по индексу (номеру позиции).

      bsl
      // Создание массива
      МассивТоваров = Новый Массив;
      МассивТоваров.Добавить("Стол");
      МассивТоваров.Добавить("Стул");
      МассивТоваров.Добавить("Шкаф");
      
      // Обращение к элементам по индексу (начинается с 0!)
      Сообщить(МассивТоваров[0]); // Выведет: "Стол"
      Сообщить(МассивТоваров[1]); // Выведет: "Стул"
      
      // Перебор всех элементов
      Для Каждого Элемент Из МассивТоваров Цикл
          Сообщить(Элемент);
      КонецЦикла;

      Когда использовать массив:

      • Когда важен порядок элементов

      • Когда нужно обрабатывать данные последовательно

      • Для хранения однотипных объектов (список товаров, документов и т.д.)

      Структура — набор пар "Ключ-Значение"

      Структура хранит данные в виде пар "ключ-значение", где каждый элемент имеет уникальное имя (ключ). Порядок элементов не гарантируется.

      bsl
      // Создание структуры
      ДанныеСотрудника = Новый Структура;
      ДанныеСотрудника.Вставить("Имя", "Иван");
      ДанныеСотрудника.Вставить("Фамилия", "Петров");
      ДанныеСотрудника.Вставить("Возраст", 30);
      ДанныеСотрудника.Вставить("Отдел", "Бухгалтерия");
      
      // Обращение к элементам по имени ключа
      Сообщить(ДанныеСотрудника["Имя"]);    // Выведет: "Иван"
      Сообщить(ДанныеСотрудника.Отдел);     // Выведет: "Бухгалтерия"
      
      // Можно также обращаться через точку (если ключ корректен)
      Сообщить(ДанныеСотрудника.Возраст);   // Выведет: 30

      Когда использовать структуру:

      • Когда нужно хранить разнотипные данные об одном объекте

      • Когда важны имена полей, а не их порядок

      • Для передачи параметров в функции и методы

      Соответствие — гибрид массива и структуры

      Соответствие похоже на структуру (тоже "ключ-значение"), но ключом может быть любой тип данных, а не только строка.

      bsl
      // Создание соответствия
      СоотвСтатусы = Новый Соответствие;
      СоотвСтатусы.Вставить(1, "Новый");
      СоотвСтатусы.Вставить(2, "В работе");
      СоотвСтатусы.Вставить(3, "Выполнен");
      СоотвСтатусы.Вставить("Отменен", 0);
      
      // Обращение по любому ключу
      Сообщить(СоотвСтатусы[1]);           // Выведет: "Новый"
      Сообщить(СоотвСтатусы["Отменен"]);   // Выведет: 0
      
      // Ключами могут быть разные типы данных
      РазныеКлючи = Новый Соответствие;
      РазныеКлючи.Вставить(Дата(2024,01,01), "Новый год");
      РазныеКлючи.Вставить(Справочники.Номенклатура.НайтиПоНаименованию("Блокнот"), 150);

      Когда использовать соответствие:

      • Когда нужны сложные ключи (даты, ссылки на объекты)

      • Для создания "словарей" преобразований

      • Когда тип ключа заранее неизвестен

      Сравнительная таблица


      Критерий    Массив    Структура    Соответствие
      Доступ к элементам    По индексу (число)    По строковому ключу    По ключу любого типа
      Порядок элементов    Сохраняется    Не гарантируется    Не гарантируется
      Ключи    Автоматические числа    Только строки    Любые типы данных
      Производительность    Быстрый доступ по индексу    Быстрый поиск по ключу    Зависит от типа ключа
      Типичное использование    Списки, коллекции    Объекты, параметры    Словари, преобразования

      Практические примеры

      Пример 1: Когда что выбрать

      bsl
      // МАССИВ — список заказов для последовательной обработки
      ЗаказыНаСегодня = Новый Массив;
      ЗаказыНаСегодня.Добавить(Док1);
      ЗаказыНаСегодня.Добавить(Док2);
      
      // СТРУКТУРА — параметры отчета
      ПараметрыОтчета = Новый Структура;
      ПараметрыОтчета.Вставить("ДатаНачала", Дата(2024,01,01));
      ПараметрыОтчета.Вставить("ДатаОкончания", ТекущаяДата());
      ПараметрыОтчета.Вставить("Организация", ВыбраннаяОрганизация);
      
      // СООТВЕТСТВИЕ — преобразование кодов в наименования
      КодыВНаименования = Новый Соответствие;
      КодыВНаименования.Вставить("001", "Администратор");
      КодыВНаименования.Вставить("002", "Менеджер");

      Пример 2: Преобразования между типами

      bsl
      // Из структуры в соответствие
      Структура = Новый Структура;
      Структура.Вставить("Ключ1", "Значение1");
      Структура.Вставить("Ключ2", "Значение2");
      
      Соотв = Новый Соответствие;
      Для Каждого КлючИЗначение Из Структура Цикл
          Соотв.Вставить(КлючИЗначение.Ключ, КлючИЗначение.Значение);
      КонецЦикла;

      Частые ошибки новичков

      1. Путаница в индексах — в массивах индексы начинаются с 0!

      2. Обращение к несуществующему ключу в структуре вызовет ошибку

      3. Попытка использовать нестроковый ключ в структуре

      4. Забывают, что порядок в структуре и соответствии не гарантирован

      Заключение

      • Используйте массив, когда важен порядок и нужна последовательная обработка

      • Используйте структуру, когда работаете с именованными параметрами объекта

      • Используйте соответствие, когда нужны сложные ключи или словари преобразований

      Правильный выбор типа коллекции сделает ваш код более читаемым, эффективным и простым в поддержке. Начните с массивов и структур — они используются в 90% случаев, а соответствие применяйте для специальных задач.


      • Комментарии
      Загрузка комментариев...

      Назад к списку Следующая статья
      Категории
      • PowerBI0
      • Битрикс2410
      • Блок программиста 1С (Новичок)65
      • Все про 1С225
      • Советы по автоматизации бизнеса9
      Это интересно
      • Вводный урок: основы работы с запросами в консоли
        Вводный урок: основы работы с запросами в консоли
        18 августа 2025
      • Макеты в 1С: Искусство превращения данных в документы
        Макеты в 1С: Искусство превращения данных в документы
        13 августа 2025
      • Документы в 1С
        Документы в 1С
        11 августа 2025
      • Справочники в 1С
        Справочники в 1С
        11 августа 2025
      • Подсистемы в 1С
        Подсистемы в 1С
        11 августа 2025
      • Создание информационной базы в 1С
        Создание информационной базы в 1С
        11 августа 2025
      • Разбор полетов: реальный кейс оптимизации медленного отчета в 1С
        Разбор полетов: реальный кейс оптимизации медленного отчета в 1С
      • Топ-5 ошибок разработчика, которые убивают производительность 1С
        Топ-5 ошибок разработчика, которые убивают производительность 1С
      • Оптимизация запросов к виртуальным таблицам регистров сведений и накопления
        Оптимизация запросов к виртуальным таблицам регистров сведений и накопления
      • Временные таблицы и общие табличные выражения (CTE) в 1С: за и против
        Временные таблицы и общие табличные выражения (CTE) в 1С: за и против
      • Модули в 1С: как правильно организовать код
        Модули в 1С: как правильно организовать код
      • Обработки vs Расширения: что выбрать для доработки типовой конфигурации?
        Обработки vs Расширения: что выбрать для доработки типовой конфигурации?
      • Оповещение() vs ВыполнитьОбработкуОповещения(): Асинхронность для чайников
        Оповещение() vs ВыполнитьОбработкуОповещения(): Асинхронность для чайников
      • Диалоги с пользователем: Вопрос(), Сообщить(), ВвестиЗначение()
        Диалоги с пользователем: Вопрос(), Сообщить(), ВвестиЗначение()
      • Отладка кода в 1С: как найти ошибку за 1 минуту
        Отладка кода в 1С: как найти ошибку за 1 минуту
      • Что такое контекст выполнения (клиент, сервер) и почему мой код не видит переменную?
        Что такое контекст выполнения (клиент, сервер) и почему мой код не видит переменную?
      • Чем отличаются процедуры и функции в 1С?
        Чем отличаются процедуры и функции в 1С?
      • Обработка исключений в 1С: надежный код без сбоев
        Обработка исключений в 1С: надежный код без сбоев
      • Как исправить данные, когда висит окно "не удалось выполнить обновление"
        Как исправить данные, когда висит окно "не удалось выполнить обновление"
      • Вложенные поля СКД в 1С
        Вложенные поля СКД в 1С
      Облако тегов
      1C:8 1С 1С ERP 1С ERP Беларусь 1с бухгалтерские проводки 1С Комплексная автоматизация 1С Комплект поддержки Беларусь 1с проводки 1С рассылка 1С синхронные методы 1с электронная почта 1С-Битрикс 1С:7 CRM абонентское обслуживание 1С автозаполнение документов в 1С автоматизация зарплаты 1С автоматизация склада 1С Автоматическое развертывание анализ процессов безопасность Безопасность труда Битрикс24 Бухгалтерский учет виды обмена в 1С Визуализация данных вложенные поля СКД внедрение внедрение Битрикс24 возможности платформы Битрикс24 временные таблицы в 1С вывод количества вывод списка 1с гайд по 1С Главное в 1С Диаграмма в 1С дизайн динамический интерфейс динамический список 1с загрузка в 1С загрузка из excel запросы в 1С Инструктажи интеграция 1С с CRM интеграция 1С с Битрикс интеграция 1С с маркетплейсами интеграция с платежными системами интерьер Искусственный интеллект исправление ошибок в 1С консоль запросов 1С константы 1С Контактная информация Контрагент Круговая диаграмма купить 1С лиды Машинное обучение мобильное приложение монопольный режим 1С налоговая отчетность 1С Беларусь написание кода 1С настройка списков 1с обзор обновление 1С обновление 1С Беларусь обработка исключений обучение пользователей 1С оптимизация запросов в 1С Оптимизация отчетов в 1С отчёты в 1С Охрана труда Печатная форма план обмена в 1С подсчет записей Предиктивная аналитика программирование 1С Работа с документами в Битрикс24 Рабочие места Рассылки расчет стоимости внедрения роли в 1С синхронизация CRM и 1С СКД советы разработчикам создание и настройка констант 1С создание и настройка ролей в 1С сопровождение 1С Беларусь сопровождение 1С онлайн составление отчетов в Битрикс табличная часть телеграм бот 1с тренинг 1С Минск удалённая поддержка 1С управление персоналом 1С УправлениеКонтактнойИнформацией ускорение работы в 1С Установить 1С в минске установка битрикс учет склада 1С читаемый код 1С шаблоны документов в 1С Юридический адрес
      Автоматизируем любой бизнес
      Подписывайтесь на новости и акции:
      Компания
      О компании
      Клиенты и партнеры
      Сотрудники
      Отзывы
      Вакансии
      Реквизиты
      Услуги
      Автоматизация 1С : Предприятия 8
      Внедрение 1С
      Демонстрация типовых решений 1с для Беларуси
      Кейсы 1С
      Консультация по 1С
      Построение аналитики и дашбордов
      Продажа Битрикс24
      Наши контакты

      +375 29 605 73 35
      Пн. – Пт.: с 9:00 до 18:00
      Минск, ул. Татарская 3, этаж 3, офис 315
      info@sectorsystem.by
      © 2026 SectorSystem- сопровождение информационных систем. Все права защищены.