AnyLogic
Развернуть
Размер шрифта

Наполнение модели данными, считанными из базы данных

В этой статьи описывается извлечение данных из сторонних баз данных с помощью устаревшего элемента База данных.
Для оптимальной работы с данными в AnyLogic воспользуйтесь встроенной базой данных модели.

С помощью объекта Запрос (Query) вы можете наполнить модель данными, полученными в результате выполнения заданного этим объектом запроса. Результат выполнения запроса представляет собой ряд строк. Каждая строка содержит набор значений, извлеченных из заданных столбцов таблицы базы данных.

По результатам выполнения запроса вы можете создать:

  • Популяцию агентов. В популяцию будут добавлены новые агенты. Каждая строка результата запроса будет использоваться для создания одного агента. Значения этой строки будут инициализировать параметры создаваемого агента. Эта возможность широко востребована в агентном моделировании, когда вам нужно населить модель агентами, чьи характеристики хранятся в базе данных. Демо-модель: Feeding a Replicated Object from Access Database
  • Коллекцию. В указанную коллекцию будут добавлены новые элементы. Каждая строка результата запроса будет использоваться для создания одного элемента. Значения этой строки будут инициализировать поля создаваемого элемента коллекции. Демо-модель: Feeding a Collection from Access Database

Создание реплицированного объекта по результатам выполнения запроса

Чтобы добавлять новые элементы в реплицированный объект

  1. Выберите в графическом редакторе или в панели Проекты требуемый объект Запрос.
  2. Перейдите в секцию Наполнение данными панели Свойства.
  3. Установите флажок Для каждой строки добавлять.
  4. Выберите опцию Агент.
  5. Выберите тип агентов, в который вы хотите добавлять новые элементы, из выпадающего списка Популяция агентов.
  6. В расположенной ниже таблице установите соответствие между параметрами реплицированного объекта и столбцами запроса, из которых будут извлекаться значения этих параметров. Каждое соответствие параметра и столбца задается в отдельной строке таблицы. Укажите имя того параметра, значение которого будет инициализироваться из базы данных, в ячейке Параметр/Поле и введите имя столбца таблицы базы данных, из которого будут извлекаться данные, в ячейке Столбец.
  7. Если вы хотите произвести добавление новых элементов в реплицированный объект сразу при запуске модели, установите флажок Выполнять при запуске.

Создание коллекции по результатам выполнения запроса

Чтобы добавлять новые элементы в коллекцию

  1. Выберите в графическом редакторе или в панели Проекты требуемый объект Запрос.
  2. Перейдите в секцию Наполнение данными панели Свойства.
  3. Установите флажок Для каждой строки добавлять.
  4. Выберите опцию Элемент в коллекцию.
  5. Выберите коллекцию, в которую вы хотите добавлять новые элементы, из выпадающего списка Коллекция.
  6. В расположенной ниже таблице установите соответствие между полями коллекции и столбцами запроса, из которых будут извлекаться значения этих полей. Каждое соответствие поля и столбца задается в отдельной строке таблицы. Выберите то поле, значение которого будет инициализироваться из базы данных, в ячейке Параметр/Поле и введите имя столбца таблицы базы данных, из которого будут извлекаться данные, в ячейке Столбец.
  7. Если вы хотите произвести добавление новых элементов в коллекцию сразу при запуске модели, установите флажок Выполнить при запуске.
Как мы можем улучшить эту статью?