Параметры автоформ

Веб-приложение, созданное при помощи помощника в среде Visual Studio, содержит несколько автоформ (форм "по умолчанию"), которые используются приложением, когда происходит обращение к данным, для которых разработчик не создал собственных форм, или при отработке некоторых стандартных действий.

Управление работой автоформ осуществляется при помощи параметров, которые передаются либо в строке запроса, либо как переменные формы. Передача параметров в строке запроса осуществляется следующим образом:

Копировать в буфер обмена

DefaultXXXForm.aspx?Параметр1=Значение1&Параметр2=Значени2&...&ПараметрN=ЗначениеN

Передача параметров через переменные формы является более сложным механизмом, который рекомендуется использовать только в случае передачи большого объема данных. Посмотреть пример реализации этого механизма можно, например, в функции openSelectUrl в js-файле V8TextBoxScripts.js.

Разработчик веб-приложения может использовать автоформы для выполнения необходимых действий, определяемых логикой приложения. Указать какие действия должна выполнить автоформа можно при помощи ее параметров, передавая значения одним из вышеуказанных способов.

Ниже приводится список всех параметров автоформ Web-расширения с необходимыми пояснениями по их использованию.

Форма списка (DefaultListForm)

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

IBAlias

Имя информационной базы. Используется в том случае, если приложение работает с несколькими информационными базами данных. Значение по умолчанию – пустая строка.

TypeName

Имя типа. Задает таблицу базы данных, которая будет отображаться в списке. Вместо TypeName может использоваться параметр TableName.

TableName

Имя таблицы. Задает таблицу базы данных, которая будет отображаться в списке. Вместо TableName может использоваться параметр TypeName.

ChoiceMode

Режим выбора для иерархических таблиц. Допустимые значения:

Если передано значение Folders, в списке будут отображаться только группы элементов.

ControlName

Идентификатор элемента управления, вызвавшего форму списка для выбора. Если передан параметр ControlName, форма переходит в режим выбора из списка.

TypeDescriptionNeeded

Указывает на необходимость считывания описания типов для поддержки связи по типу. Возможные значения:

SelectionName<N>, SelectionValue<N>, SelectionType<N>

Отборы и параметры критериев отбора. В случае одного элемента отбора используется форма SelectionName, SelectionValue, SelectionType. Если установлено несколько отборов, то они задаются в параметрах SelectioinName1, SelectionValue1, SelectionType1, SelectionName2, SelectionValue2, SelectionType2 и т.д. Нумерация начинается с единицы.

SelectionName – имя поля.
SelectionValue – значение отбора.
SelectionType – тип значения. Используется в случае составного типа.

Assortment

Задает режим подбора. В этом режиме после выбора значения форма остается открытой, предоставляя возможность продолжения выбора.
Должен быть задан параметр ControlName. Допустимое значение: true

InitialValue

Начальное значение. Содержит значение ключа записи. Если параметр задан, то список позиционируется на переданное значение.

Форма элемента объектной таблицы (DefaultObjectForm)

DefaultObjectForm используется для добавления, редактирования, копирования или ввода на основании записи объектной таблицы.
Режим формы определяется следующим образом:

  1. Если передан параметр KeyValue, то форма переходит в режим редактирования.
  2. Если передан параметр CopyKeyValue и задаваемая им таблица совпадает с таблицей из параметра TableName (или KeyType), то форма переходит в режим копирования.
  3. Если передан параметр CopyKeyValue и задаваемая им таблица не совпадает с таблицей из параметра TableName (или KeyType), то форма переходит в режим ввода на основании.
  4. Если параметры KeyValue и CopyKeyValue не заданы, то форма переходит в режим добавления записи.

IBAlias

Имя информационной базы. Используется в том случае, если приложение работает с несколькими информационными базами данных. Значение по умолчанию – пустая строка.

KeyType

Тип значения ключевого поля.Используется для определения таблицы, запись которой будет редактироваться (или в которую будет добавлена новая запись).

KeyValue

Значение ключевого поля. Задает значение ключа редактируемой записи.

TableName

Имя таблицы. Задает таблицу базы данных, запись которой будет редактировать в форме (будет добавлена при помощи формы). Вместо TableName может использоваться параметр KeyType.

CopyKeyType, CopyKeyValue

Тип значения ключевого поля и значение ключевого поля копируемой записи. Передача этих параметров задает режим копирования.

IsFolder

Параметр "ЭтоГруппа". Определяет режим редактирования (создания) группы.

MasterName<N>, MasterValue<N>, MasterType<N>

Предустановленные значения полей. Используется, например, для задания поля Владелец для подчиненных таблиц.
В случае одного значения используется форма MasterName, MasterValue, MasterType. Если передано несколько значений, то они задаются в параметрах MasterName1, MasterValue1, MasterType1, MasterName2, MasterValue2, MasterType2 и т.д. Нумерация начинается с единицы.

MasterName – имя поля.
MasterValue – значение.
MasterType – тип значения. Используется в случае составного типа.

ControlName

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

Parent

Значение поля Родитель для иерархических таблиц.

Форма элемента регистра (DefaultRecordForm)

DefaultRecordForm используется для редактирования, создания новой или копирования существующей записи регистра.
Режим формы определяется следующим образом:

  1. Если передан параметр KeyValue<N>, то форма переходит в режим редактирования.
  2. Если передан параметр CopyKeyValue<N>, то форма переходит в режим копирования.
  3. Если параметры KeyValue<N> и CopyKeyValue<N> не заданы, то форма переходит в режим добавления записи.

IBAlias

Имя информационной базы. Используется в том случае, если приложение работает с несколькими информационными базами данных. Значение по умолчанию – пустая строка.

TableName

Имя таблицы регистра. Задает регистр, запись которого будет редактировать в форме (будет добавлена при помощи формы).

MasterName<N>, MasterValue<N>, MasterType<N>

Предустановленные значения полей. В случае одного значения используется форма MasterName, MasterValue, MasterType. Если передано несколько значений, то они задаются в параметрах MasterName1, MasterValue1, MasterType1, MasterName2, MasterValue2, MasterType2 и т.д. Нумерация начинается с единицы.

MasterName – имя поля.
MasterValue – значение.
MasterType – тип значения. Используется в случае составного типа.

ControlName

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

KeyName<N>, KeyValue<N>, KeyType<N>

Значения ключевых полей редактируемой записи. В случае одного значения используется форма KeyName, KeyValue, KeyType. Если для таблицы задано несколько ключевых полей, то их значения задаются в параметрах KeyName1, KeyValue1, KeyType1, KeyName2, KeyValue2, KeyType2 и т.д. Нумерация начинается с единицы.

KeyName – имя ключевого поля.
KeyValue – значение ключевого поля.
KeyType – тип значения ключевого поля. Используется в случае составного типа.

CopyKeyName<N>, CopyKeyValue<N>, CopyKeyType<N>

Значения ключевых полей копируемой записи. В случае одного значения используется форма CopyKeyName, CopyKeyValue, CopyKeyType. Если для таблицы задано несколько ключевых полей, то их значения задаются в параметрах CopyKeyName1, CopyKeyValue1, CopyKeyType1, CopyKeyName2, CopyKeyValue2, CopyKeyType2 и т.д. Нумерация начинается с единицы.

CopyKeyName – имя ключевого поля.
CopyKeyValue – значение ключевого поля.
CopyKeyType – тип значения ключевого поля. Используется в случае составного типа.

Форма строки табличной части (DefaultLineForm)

DefaultLineForm предназначена для редактирования (добавления) строки табличной части. Вызывается, если у элемента управления V8EditGrid установлено свойство EditInSeparateWindow

IBAlias

Имя информационной базы. Используется в том случае, если приложение работает с несколькими информационными базами данных. Значение по умолчанию – пустая строка.

TableName

Имя табличной части.

ColumnsList

Разделенный точкой с запятой (;) список отображаемых полей строки табличной части.

HiddenColumnsList

Разделенный точкой с запятой (;) список неотображаемых полей строки табличной части.

Value<N>

Значения полей, редактируемых в форме. Порядок задания значений полей соответствует порядку полей в параметрах ColumnsList и HiddenColumnsList.
Значение задается в форме:

Копировать в буфер обмена

значение$$тип$$описаниеТипов

ControlIndex

Задает номер строки табличной части (нумерация начинается с нуля). Если переданное значение меньше нуля, то форма переходит в режим добавления строки табличной части.

ControlName

Идентификатор элемента управления (V8EditGrid), вызвавшего форму для редактирования (добавления) строки табличной части. Используется для обновления отображения табличной части после записи изменений в форме.

Форма отбора и сортировки (DefaultFilterForm)

DefaultFilterForm предназначена для задания отборов и сортировки для формы списка.

IBAlias

Имя информационной базы. Используется в том случае, если приложение работает с несколькими информационными базами данных. Значение по умолчанию – пустая строка.

TableName

Имя таблицы базы данных.

Selection<N>

Значения уже установленного отбора. Если задан один элемент отбора, то используется форма Selection. В случае нескольких отборов, их значения передаются в параметрах Selection1, Selection2 и т.д. Нумерация начинается с единицы.

Пример использования:

Копировать в буфер обмена
string selection = Page.Request["Selection" + suffix]
V8Filter filterItem = V8Filter.Parse(selection, metadata);

Order

Сортировка заданная для списка. Пример использования:

Копировать в буфер обмена

V8Util.V8OrderItemInfoCollection order = new V8Util.V8OrderItemInfoCollection();
V8Util.ParseOrderString(Page.Request["Order"], order);

ControlName

Идентификатор элемента управления (V8Grid), вызвавшего форму для задания отбора и сортировки.

Форма картинки (DefaultImageForm)

DefaultImageForm предназначена для отображения картинок, хранящихся в базе данных. Задается как значение свойства ImageUrl элемента управления Image. Пример использования:

Копировать в буфер обмена

Image1.ImageUrl = " DefaultImageForm.aspx?TableName=Справочник.Тест.ТабличнаяЧасть1&KeyName=Ссылка&KeyValue=" + ItemDataSource.KeyValue.ToInvariantString() + "&FieldName=Фото&LineNumber=1";

IBAlias

Имя информационной базы. Используется в том случае, если приложение работает с несколькими информационными базами данных. Значение по умолчанию – пустая строка.

TableName

Имя таблицы базы данных. Также, можно задавать табличную часть таблицы базы данных.

FieldName

Имя поля, содержащего объект Картинка.

LineNumber

Номер строки табличной части для отображения объекта Картинка. Нумерация строк начинается с единицы.

KeyName<N>, KeyValue<N>, KeyType<N>

Значения ключевых полей записи. В случае одного значения используется форма KeyName, KeyValue, KeyType. Если для таблицы задано несколько ключевых полей, то их значения задаются в параметрах KeyName1, KeyValue1, KeyType1, KeyName2, KeyValue2, KeyType2 и т.д. Нумерация начинается с единицы.

KeyName – имя ключевого поля.
KeyValue – значение ключевого поля.
KeyType – тип значения ключевого поля. Используется в случае составного типа.

Форма печати (DefaultReportPrint)

DefaultReportPrint предназначена для отображения отчета без элементов управления. Содержимое этой формы может быть направлено на печать.

ReportID

Задает идентификатор сформированного отчета. Получить значение идентификатора для передачи в форму печати можно следующим образом:

Копировать в буфер обмена

string ReportID ReportSource.UUID.ToString()

Форма выбора типа (DefaultTypeChoice)

DefaultTypeChoice используется для задания типа. Применяется при редактировании значений типа ОписаниеТипов.

IBAlias

Имя информационной базы. Используется в том случае, если приложение работает с несколькими информационными базами данных. Значение по умолчанию – пустая строка.

AvailableTypes

Задает список доступных для выбора типов. Если параметр AvailableTypes не задан, то для выбора доступны все типы, описанные в информационной базе данных. Значение этого параметра содержит строковое представление объекта типа TypeDescription. Пример использования:

Копировать в буфер обмена

string availableTypesStr = Page.Request["AvailableTypes"];
if (availableTypesStr != null && availableTypesStr != string.Empty)
  availableTypes = TypeDescription.Parse(availableTypesStr);

InitialValue

Начальное значение. Содержит строковое представление объекта типа TypeDescription. Пример использования:

Копировать в буфер обмена

string initialValueStr = Page.Request["InitialValue"];
if (initialValueStr != null && initialValueStr != string.Empty)
  typeDomain = TypeDescription.Parse(initialValueStr);

ControlName

Идентификатор элемента управления, получающий выбранное значение.

Форма ввода по строке (DefaultValueList)

DefaultValueList не является отображаемой формой. Вместо этого, она содержит механизм поиска в таблице базы данных значения, соответствующего введенному пользователем. DefaultValueList возвращает данные в виде строки. Формат возвращаемых данных:

Формат данных Описание
alert:$$текст Ошибка.
текст содержит сообщение об ошибке.
query:$$текст Значений, соответствующих введенной строке, не найдено.
текст содержит текст сообщений.
представление$$значение$$списокТипов Найдено одно значение.
представление – представление значения
значение – найденное значение
списокТипов – разделенный запятыми список типов
представление1$$...$$представлениеN$$значение1$$...$$значениеN$$списокТипов Найдено несколько значений.
представление<N> – представление значения
значение<N> – найденное значение
списокТипов – разделенный запятыми список типов

Максимальное количество возвращаемых значений задано константой ItemsMaxCount.

IBAlias

Имя информационной базы. Используется в том случае, если приложение работает с несколькими информационными базами данных. Значение по умолчанию - пустая строка.

KeyValue, KeyType

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

KeyPresentation

Введенная пользователем строка, по которой происходит поиск значения.

TypeDescriptionNeeded

Указывает на необходимость считывания описания типов для поддержки связи по типу. Допустимые значения:

ChoiceMode

Указывает режим, в котором находится поле ввода. Допустимые значения:

Значение Описание
Items Поиск осуществляется только по элементам
Folders Поиск осуществляется только по группам
FoldresAndItems Поиск осуществляется и по группам и по элементам


SelectionName<N>, SelectionValue<N>, SelectionType<N>

Значения отбора. В случае одного элемента отбора используется форма SelectionName, SelectionValue, SelectionType. Если установлено несколько отборов, то они задаются в параметрах SelectioinName1, SelectionValue1, SelectionType1, SelectionName2, SelectionValue2, SelectionType2 и т.д. Нумерация начинается с единицы.

SelectionName – имя поля.
SelectionValue – значение отбора.
SelectionType – тип значения. Используется в случае составного типа.

ControlName

Идентификатор элемента управления, получающий выбранное значение.

Форма выбора поля (DefaultFieldTreeForm)

DefaultFieldTreeForm представляет собой форму для выбора поля из списка полей. Список может содержать поля таблицы базы данных или поля результата запроса. Список отображается в виде иерархического элемента управления.
Используется для настройки отчетов пользователем.

IBAlias

Имя информационной базы. Используется в том случае, если приложение работает с несколькими информационными базами данных. Значение по умолчанию - пустая строка.

SelectionValue

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

Элемент Описание
Первый элемент Имя поля
Второй элемент Представление поля
Третий элемент Разделенный запятыми список типов

Пример:

Копировать в буфер обмена

КоличествоОстаток$КоличествоОстаток$decimal$Номенклатура$Номенклатура$СправочникСсылка_Номенклатура$Склад$Склад$СправочникСсылка_Склады

InitialValue

Выбранное значение. Узел выбранного значения при первоначальном отображении раскрыт.

ControlName

Идентификатор элемента управления, получающий выбранное значение.