Структура базы данных SteelTrace AG на стороне сервера

Тут храниться запись о собствено том сайте (домене, заводе – короче объекте верхнего уровня)

Поле

Тип

Описание

Пример

Id

uniqueidentifier

Идентификатор сайта

0167EB79-0FF4-4113-…

Name

nvarchar(50)

Имя сайта

kzsp

BaseUri

nvarchar(50)

База для ссылок

http://95.73.61.86/3D

Типы 3D компонентов - VRMLComponents

Тут мы храним все типы наших «кирпичиков», начиная с самого верха – с ландшафта. Включая динамические кирпичи – рулон там или штрипс. Есть некая древовидность, указывающая, что где и для чего (ну например склад подчинен заводу, ячейка – складу, рулон – ячейке). Есть пусть к файлу с компонентом 3D .

Поле

Тип

Описание

Пример

Id

uniqueidentifier

Идентификатор компоненты

0167EB79-0FF4-4113-…

ParentId

nvarchar(50)

Идентификатор компоненты родитеоя

971afc66-d067-46a2-…

Name

nvarchar(50)

Имя компоненты

Location for coil ANGC Finished Pack Proper

FileUri

nvarchar(50)

Ссылка на VRLM-файл от базы

/landscape.wrl

Actions

nvarchar(50)

Действия сервиса, производимые при достижении узла; тип узла

· Lookup structure – идти дальше по дереву вниз

· Add ERP data – заглянуть в 1С за данными по рулонам

· No - ничего

Type

nvarchar(50)

Тип. Добавлен по просьбе разработчика клиента

location

Aux

nvarchar(50)

Пустое поле, добавлено по просьбе разработчика клиента

-

VRMLObjects - объекты, листы дерева

Все «листы» дерева – все ячейки, станки, люди, здания. Координаты всех «листов» деерва . Тут же – привязка к ERP.

Поле

Тип

Описание

Пример

Id

uniqueidentifier

Идентификатор объекта

0167EB79-0FF4-4113-…

SiteId

nvarchar(50)

Идентификатор сайта

971afc66-d067-46a2-…

ComponetId

nvarchar(50)

Идентификатор компоненты

971afc66-d067-46a2-…

Name

nvarchar(50)

Имя объекта

АНГЦ - склад ГОТОВОЙ НЕУП. ПРОДУКЦИИ / Ы-07

Coord_X

float

Координата X

12.98

Coord_Y

float

Координата Y

12.98

Coord_Z

float

Координата Z

12.98

Coord_A

float

Координата A

12.98

Coord_B

float

Координата B

12.98

Coord_C

float

Координата C

12.98

Coord_D

float

Координата D

12.98

ERPId

nvarchar(50)

Привязка «листа» к элементу системы ERP

КЗР000087

CommonNameId

nvarchar(50)

Некий текстовый индекс объекта. Добавлен по просьбе разрабочика. Нужен для того, что не все элементы имеют ERPId, а Name может быть не уникально

КЗР000087

Layout

nvarchar(50)

Пустое поле, добавлено по просьбе разработчика клиента

-

Методы веб-сервиса VRMLService

Метод SiteQuery

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

Два парамтера запроса: strSiteName – имя сайта (домена), и strRootId – id верхнего компонента. Спросим с самого верха – strSiteName = «kzsp», strRootId = «-». Ответ – собсвтенно ландшафт и его прямые потомки – здания:

clip_image002

Далее, берем первое здание - «АНГЦ - склад СЫРЬЯ (до стана» - и, при увеличении, задаем второй запрос: strSiteName = «kzsp», strRootId = «903a248d-cc6d-4352-9e48-eb2e47a5ea59». Сервис отдаст два уровня – здание и его потомков – ячейки и рулоны:

clip_image004

* если я все верно помню, сейчас тег uri не выдается. Переснять пример без доступа к 1С сложно

Метод QueryComponents

Перед началом работы с увеличением объектов клиент запрашивает все типы копонентов и кэширует их. Клиент делает это с использовнеим указанного метода.

Запрос состоит из одного параметра – имя сайта. Спросим для strSiteName = «kzsp»:

clip_image006

Тег Modified описывает дату последнего изменения файла из тега Uri.

Метод UpdateObjects

Метод используется для обновления координат записей в VRMLObjects. В методе один парамтер – strXml. В него надо загрузить XML такого формата:

clip_image008

Где указать новые координаты. Можно загрузить и несколько блоков Row сразу.

Для указания идентификатора строки VRMLObjects, которую надо обновить, используется или Id, или CommonNameId

powered by metaPost


print

rating
  Комментарии