ARM CIM. Инструкция для администратора

Данная инструкция содержит информацию по установке и конфигурации программы ARM CIM.

ARM CIM - программа для оператора системы взвешивания. Клиент базы данных взвешиваний. Предназначена для обработки взвешиваний, полученных от ПО контроллера взвешивания, и подготовки этих данных к передаче в информационную систему предприятия.

Содержание:

1. Установка

1.1. Системные и программные требования

Аппаратные требования к компьютеру для ARMLite:

1.2. Установка программы

Программа поставляется в виде архива без использования средств установки. Просто извлеките файлы из архива ARMCIM.zip в любую папку на диске (например: C:\ARMCIM\App). Рекомендуется организовать такую структуру папок:

Структура папки с программой (C:\ARMCIM\App):

Далее, для работы программы необходимо создать базу данных.

  1. На серверный компьютер или на ПК оператора установите Microsoft SQL Server 2012 или более новую версию (2014, 2016). Можно использовать бесплатную редакцию EXPRESS. В пакет установки должен быть включен инструмент администрирования SQL Server Management Studio. Смотрите инструкцию по установке MSSQL сервера и настройке удаленного подключения.
  2. Откройте SQL Server Management Studio, подключитесь к SQL серверу.
  3. Создайте пустую базу данных с любым наименованием. Для этого в обозревателе объектов откройте контекстное меню для папки Databases, нажмите New Database.... В окне создания базы введите Database name: например, ARMCIM. Нажмите OK.
  4. Запустите АРМ от имени администратора Windows. Если подключение к базе еще не было настроено, тогда появится окно как на рис.1. Нажмите изменить параметры подключения, затем Создание новой базы данных. Откроется окно подключения к базе как на рис.1.

    Рис.1: Параметры подключения к базе данных Рис.1: Параметры подключения к базе данных

    Если подключение к базе уже было настроено, и ожидается вход в АРМ, тогда выберите логин superuser, пароль по умолчанию не задан, нажмите Войти. В меню откройте Настройки >> Создание базы данных.

  5. Выберите тип сервера: MSSQL. Задайте параметры подключения к серверу.

  6. Выберите пустую базу данных, созданную по пункту 3.
  7. Выберите назначение базы: Рабочая. Если создать тестовую базу, АРМ будет работать в тестовом режиме с эмулятором весов.
  8. Нажмите Создать базу. Должно появиться окно с сообщением об успешном создании базы. В этом окне нажмите Подключиться. АРМ перезапустится и подключится к новой MSSQL базе.

1.3. Подключение весов

К АРМ можно подключить двое весов. Для каждого подключения к весам требуется активация. Подключение к весам не работает в тестовой базе данных.

  1. Запустите ARMCIM.exe. Выберите логин superuser, пароль по умолчанию не задан, нажмите Войти.
  2. Откройте в меню Настройка >> Подключение весов / Активация. Выберите модель весового терминала, введите IP адрес терминала. Для проверки доступа по сети, можно нажать кнопку ping. Нажмите Применить. При успешном подключении к терминалу в этом же окне появится R-код.
  3. Скопируйте R-код и вставьте в заявку на получение ключа активации.
  4. На указанный в заявке адрес эл.почты будет отправлен Ключ активации. Скопируйте и вставьте ключ в окне активации. Нажмите Применить. В поле статуса активации должно появиться: Активация прошла успешно.
  5. После активации в правом верхнем углу основного окна будет выводиться текущее значение массы от весов с единицей измерения как на терминале.

Рис.2: Подключение весов / Активация Рис.2: Подключение весов / Активация

Список весовых терминалов, которые можно подключить к АРМ:

1.4. Обновление программы

Для обновления программы в большинстве случаев достаточно заменить два файла: ARMCIM.exe и Shell.dll.

  1. Перед обновлением рекомендуется сделать резервную копию текущей версии программы и базы данных. Резервную копию базы MSSQL можно сделать через АРМ в меню Настройка >> Резервное копирование базы данных или с помощью SQL Server Management Studio.
  2. Загрузите архив с новой версией ARMCIM.zip, извлеките файлы в любую папку на диске. Перенесите новые файлы ARMCIM.exe и Shell.dll в папку с текущей рабочей программой.
  3. Запустите ARMCIM.exe. Если для новой версии требуется внести изменения в структуру базы данных, программа делает это автоматически при первом запуске новой версии. В этом случае выводится сообщение об успешном обновлении базы данных.
  4. При запуске новой версии программа также может добавить в существующие конфигурационные файлы новые параметры со значениями по умолчанию.

2. Взаимодействие с внешней информационной системой

ARMDataReceived

ARMDataReceived - хранимая процедура в базе данных MSSQL, которая вызывается из ARMCIM при отправке данных по нажатию кнопки оператором.

Входные параметры

Поле Тип Описание
@IsReport BIT Контекст отправки данных (0 - из раздела просмотра состава; 1- из раздела просмотра отчета по связанным взвешиваниям)
@ReportNumber INT Номер отчета (NULL - в контексте состава)
@TrainNumber INT Номер состава (NULL - в контексте отчета)
@UserLogin NVARCHAR(15) Логин пользователя. В контексте отчета это пользователь, создавший отчет. В контексте состава это пользователь, подтвердивший все единицы состава.
@TrainUnits TrainUnitType Табличная переменная. Содержит список в/ц. Структура полей: TrainUnitType

Table: Таблица 1

TrainUnitType

Поле Тип Описание
UnitID INT NOT NULL Идентификатор единицы состава в таблице Units базы данных ARMCIM
OrderN INT NOT NULL Номер взвешивания п/п в составе
ReportNumber INT Номер отчета, к которому привязана эта запись
TrainNumber INT NOT NULL Номер состава
TrainDirection BIT NOT NULL Направление движения
NaturListID NVARCHAR(16) Идентификатор натурного листа, выбранного на состав
Number NVARCHAR(12) Номер в/ц
CarType NVARCHAR(5) Тип в/ц
Capacity INT Грузоподъемность (кг)
ManualTare INT Масса тары теоретическая, введенная вручную или из натурного листа (кг)
LinkedTare INT Масса тары фактическая порожнего в/ц (кг)
LinkedTareID INT Идентификатор связанного по номеру порожнего в/ц в таблице Units базы данных ARMCIM
Weight INT NOT NULL Масса (кг)
WeighingMode INT NOT NULL Режим взвешивания:
0 - не взвешен;
1 - в динамике, на полной длине;
2 - в динамике, потележечно;
3 - в динамике, на полной длине с 2х платформ;
4 - в статике, на полной длине;
5 - в статике, потележечно.
DateWeighed DATETIME NOT NULL Дата/время взвешивания
Speed FLOAT NOT NULL Скорость (км/ч)
Product NVARCHAR(100) Наименование продукта
Axles INT NOT NULL Количество осей
UnitType INT NOT NUL Тип единицы состава:
0 - неизвестно
1 - в/ц
2 - тепловоз
3 - прикрытие

SQL-скрипт хранимой процедуры ARMDataReceived

``` DROP PROCEDURE IF EXISTS dbo.ARMDataReceived GO DROP TYPE IF EXISTS TrainUnitType GO CREATE TYPE TrainUnitType AS TABLE ( UnitID INT NOT NULL, OrderN INT NOT NULL, ReportNumber INT, TrainNumber INT NOT NULL, TrainDirection BIT NOT NULL, NaturListID NVARCHAR(16), Number NVARCHAR(12), CarType NVARCHAR(5), Capacity INT, ManualTare INT, LinkedTare INT, LinkedTareID INT, Weight INT NOT NULL, WeighingMode INT NOT NULL, DateWeighed DATETIME NOT NULL, Speed FLOAT NOT NULL, Product NVARCHAR(100), Axles INT NOT NULL, UnitType INT NOT NULL );

GO CREATE PROCEDURE dbo.ARMDataReceived @IsReport BIT, @ReportNumber INT, @TrainNumber INT, @UserLogin NVARCHAR(15), @TrainUnits TrainUnitType READONLY AS SET NOCOUNT ON

--пример записи полученных данных в таблицу
--DECLARE @Source NVARCHAR(15)
--IF (@IsReport = 1) SET @Source='report'
--ELSE SET @Source='train'
--INSERT INTO ARMData (Source, UserLogin, UnitID, OrderN, ReportNumber, TrainNumber, TrainDirection, NaturListID, Number, CarType, Capacity, ManualTare, LinkedTare, LinkedTareID, Weight, WeighingMode, DateWeighed, Speed, Product, Axles, UnitType)
--SELECT @Source, @UserLogin, UnitID, OrderN, ReportNumber, TrainNumber, TrainDirection, NaturListID, Number, CarType, Capacity, ManualTare, LinkedTare, LinkedTareID, Weight, WeighingMode, DateWeighed, Speed, Product, Axles, UnitType FROM @TrainUnits

--RETURN 0; --АРМ сообщит, что данные не были приняты.
RETURN 1; --АРМ сообщит, что данные приняты успешно.

```

SQL-скрипт тестовой таблицы ARMData

``` DROP TABLE IF EXISTS dbo.ARMData

SET ANSI_NULLS ON GO

SET QUOTED_IDENTIFIER ON GO

CREATE TABLE [dbo].ARMData ON [PRIMARY] ```