Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Bool SetSessionParameter (string name, string value)




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

Метод возвращает true, если имя параметра и его значение распознано и является допустимым, иначе возвращается false.

Метод вызывает исключение если пользователь не аутентифицирован или допустимое время неактивности истекло.

Важно! Вызов метода BMService.SetVersion может изменить значение флагов, так чтобы это соответствовало поведению web-сервисов для данной версии. Поэтому нужные значения параметров надо выставлять после установки версии.

Метод входит в web-сервисы начиная с версий 3.0.2.139 и 3.1.0.29.

Список допустимых параметров

На момент написания данного раздела поддерживаются следующие параметры:

Имя параметра Допустимые значения Описание
FillOperationESigns true, false Флаг включает или отключает заполнение списка OperationESigns в структурах SingleInstructionData и ReportInfo, предоставляя в более удобном виде информацию по операциям. Если при открытии сессий установлена версия клиента 3.0.2.139 или 3.1.0.29 и выше, флаг включается автоматически.
FillESigns True, false Флаг включает или отключает заполнение списка ESigns в структурах SingleInstructionData и ReportInfo. Это позволяет сократить сетевой траффик, поскольку вся эта информация уже содержится в более полном списке OperationESigns. По-умолчанию всегда включено.
EnableUserFolders True, false Флаг включает или отключает поддержку пользовательских папок. В этом случае GetFolderList будет дополнительно возвращать две корневых папки в качестве системных и добавлять дерево пользовательских папок, если задана соответствующая глубина. По умолчанию выключен. При открытии версионного соединения, начиная с 3.1.1.20, включается автоматически.
UseTimeZones True, false Флаг включает или отключает передачу клиентам вебс-сервисов фиксированных и конвертируемых времен. Флаг автоматически включается при открытии версионного соединения 3.4.1.0 или выше. Возможность выключения оставлена для поддержки совместимости: веб-сервисы будут эмулировать поведение предыдущих версий. N.B. Поведение предыдущих версий неспецифицировано, поэтому выключать данный флаг следует только если обнаружены проблемы в клиентском ПО при включенном флаге и нет возможности их оперативно исправить.

 

String GetSessionParameter (string name)

Метод возвращает значение параметра текущей сессии.

Если имя параметра не распознано, возвращается null.

Метод вызывает исключение если пользователь не аутентифицирован или допустимое время неактивности истекло.

Метод входит в web-сервисы начиная с версий 3.0.2.139 и 3.1.0.29.

Методы сущности

Два следующих метода доступных только в 310 и касаются вызова методов сущности.

Методы

CallMethod

Вызывает метод сущности.

Параметр:

§ Entity – имя сущности;

§ Method – вызываемый метод;

§ Parameters – массив передаваемых методу аргументов.

Результат выполнения:

Возвращает результат выполнения метода сущности в формате CallResult. В случае ошибки вызова метода или передачи некорректных параметров будет сгенерировано исключение.

CallMethodRS

Вызывает метод сущности. Полностью аналогичен методу CallMethod за исключением типа возвращаемого результата.

Параметр:

§ Entity – имя сущности;

§ Method – вызываемый метод;

§ Parameters – массив передаваемых методу аргументов.

Результат выполнения:

Возвращает результат выполнения метода сущности в формате CallResultRS. В случае ошибки вызова метода или передачи некорректных параметров будет сгенерировано исключение.

 

Структуры данных

Binary

Метод сущности возвращает массив байт в этой структуре.

Название поля Тип Описание
Data hexBinary Массив данных, возможен Null
Length Int Длина массива данных

GlobalUID

Метод сущности возвращает универсальный идентификатор в этой структуре.

Допускается представление либо в виде набора байт, либо в виде hex-строки. Структура считается заполненной корректно и может быть передана на web-сервер, если указаны ее значения в одном из двух форматов. Если указаны значения в обоих форматах (строка и массив), то они обязаны быть равны.

Сервер при ответе, для удобства использования, задает оба значения.

Название поля Тип Описание
Hex String Hex-строка. Примеры допустимых строк: AbCdEf0123456789aBcDeF0123456789 AbCdEf01-2345-6789-aBcD-eF0123456789
Bytes hexBinary Набор байт длины 16

SimpleValue

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

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

Название поля Тип Описание
String String Эти значения примитивного типа являются простыми аналогами типов w3
Long Long
DateTime DateTime
Double Double
Decimal Decimal
GlobalUID GlobalUID Уникальный идентификатор объекта
Binary Binary Блок бинарных данных

NameValue

Является аналогом ключ-значение. Используется для хранения именованных значений (например, списка параметров) при вызове методов сущностей.

Название поля Тип Описание
Name String Имя
Value SimpleValue Значение, возможно Null

Type

Перечисление всевозможных примитивных типов в SimpleValue.

ColumnHeader

Заголовок столбца структуры Table.

Название поля Тип Описание
ColumnName String Имя
Type Type Тип данных
OrderNumber Int Порядковый номер столбца

Record

Соответствует одной записи в структуре Table.

 

 

Название поля Тип Описание
Values SimpleValue[] Упорядоченный набор значений, возможно Null
OrderNumber Int Порядковый номер записи

Table

Представление результата метода сущности в виде таблицы.

Название поля Тип Описание
Columns ColumnHeader[] Заголовки столбцов, возможен Null, в случае, если таблица пустая
Records Record[] Массив записей, возможен Null, в случае, если таблица пустая. Все записи имеют одинаковую длину, равную количеству колонок в таблице. В двух различных записях на соответствующих позициях стоят данные одного и того же типа – того, который указан в заголовке столбца. Исключения составляют пропущенные значения Null.

Row

Соответствует одной записи в структуре RowSet.

Название поля Тип Описание
Values NameValue[] Набор значений, возможен Null
OrderNumber Int Порядковый номер записи

RowSet

Представление результата метода сущности в виде набора записей. Основное отличие от Table в отсутствии заголовков. Вместо этого, название колонки указано прямо в записи, в паре со значением, а тип данных определяется непосредственно через структуру SimpleValue.

Название поля Тип Описание
Rows Row[] Массив записей, возможен Null, в случае, если набор пустой. Записи имеют одинаковую длину; в двух различных записях на соответствующих позициях стоят данные одного и того же типа

List

Содержит список значений, возвращенных методом сущности.

Название поля Тип Описание
Values SimpleValue[] Список значений, возможен Null

CallResult

Структура, в которой метод сущности возвращает результат.

Состоит из двух частей: основного результата и набора выходных значений. Основной результат может быть сложным объектом, например List или Table. Допускается Null. Ниже приведена таблица допустимых типов:

Название поля Тип Описание
Value SimpleValue Примитивное значение
List List Набор примитивных значений. Все значения имеют один и тот же тип, определять который можно из любой структуры SimpleValue
Table Table Таблица

Выходные значения представлены массивом NameValue:

Название поля Тип Описание
OutputParameters NameValue[] Массив именованных значений, может быть Null. Значения отдельных NameValue внутри массива не обязаны быть одного типа и могут местами встречаться Null

CallResultRS

Аналогичен структуре CallResult, за исключением типа главного результата.

Название поля Тип Описание
Value SimpleValue Примитивное значение
List List Набор примитивных значений. Все значения имеют один и тот же тип, определять который можно из любой структуры SimpleValue
Rows RowSet Набор строк
Название поля Тип Описание
OutputParameters NameValue[] Массив именованных значений, может быть Null. Значения отдельных NameValue внутри массива не обязаны быть одного типа и могут местами встречаться Null

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...