Веб-приложение, созданное при помощи помощника в среде Visual Studio, содержит несколько автоформ (форм "по умолчанию"), которые используются приложением, когда происходит обращение к данным, для которых разработчик не создал собственных форм, или при отработке некоторых стандартных действий.
Управление работой автоформ осуществляется при помощи параметров, которые передаются либо в строке запроса, либо как переменные формы. Передача параметров в строке запроса осуществляется следующим образом:
Копировать в буфер обменаDefaultXXXForm.aspx?Параметр1=Значение1&Параметр2=Значени2&...&ПараметрN=ЗначениеN
Передача параметров через переменные формы является более сложным механизмом, который рекомендуется использовать только в случае передачи большого объема данных. Посмотреть пример реализации этого механизма можно, например, в функции openSelectUrl в js-файле V8TextBoxScripts.js.
Разработчик веб-приложения может использовать автоформы для выполнения необходимых действий, определяемых логикой приложения. Указать какие действия должна выполнить автоформа можно при помощи ее параметров, передавая значения одним из вышеуказанных способов.
Ниже приводится список всех параметров автоформ Web-расширения с необходимыми пояснениями по их использованию.
DefaultListForm используется для отображения записей таблицы базы данных в виде списка. Также, DefaultListForm применяется для выбора значений из списка записей.
IBAlias
Имя информационной базы. Используется в том случае, если приложение работает с несколькими информационными базами данных. Значение по умолчанию – пустая строка.
TypeName
Имя типа. Задает таблицу базы данных, которая будет отображаться в списке. Вместо TypeName может использоваться параметр TableName.
TableName
Имя таблицы. Задает таблицу базы данных, которая будет отображаться в списке. Вместо TableName может использоваться параметр TypeName.
ChoiceMode
Режим выбора для иерархических таблиц. Допустимые значения:
Items Folders FoldersAndItemsЕсли передано значение Folders, в списке будут отображаться только группы элементов.
ControlName
Идентификатор элемента управления, вызвавшего форму списка для выбора. Если передан параметр ControlName, форма переходит в режим выбора из списка.
TypeDescriptionNeeded
Указывает на необходимость считывания описания типов для поддержки связи по типу. Возможные значения:
- true
- false
SelectionName<N>, SelectionValue<N>, SelectionType<N>
Отборы и параметры критериев отбора. В случае одного элемента отбора используется форма SelectionName, SelectionValue, SelectionType. Если установлено несколько отборов, то они задаются в параметрах SelectioinName1, SelectionValue1, SelectionType1, SelectionName2, SelectionValue2, SelectionType2 и т.д. Нумерация начинается с единицы.
SelectionName – имя поля.
SelectionValue – значение отбора.
SelectionType – тип значения. Используется в случае составного типа.Assortment
Задает режим подбора. В этом режиме после выбора значения форма остается открытой, предоставляя возможность продолжения выбора.
Должен быть задан параметр ControlName. Допустимое значение: trueInitialValue
Начальное значение. Содержит значение ключа записи. Если параметр задан, то список позиционируется на переданное значение.
DefaultObjectForm используется для добавления, редактирования, копирования или ввода на основании записи объектной таблицы.
Режим формы определяется следующим образом:
- Если передан параметр KeyValue, то форма переходит в режим редактирования.
- Если передан параметр CopyKeyValue и задаваемая им таблица совпадает с таблицей из параметра TableName (или KeyType), то форма переходит в режим копирования.
- Если передан параметр CopyKeyValue и задаваемая им таблица не совпадает с таблицей из параметра TableName (или KeyType), то форма переходит в режим ввода на основании.
- Если параметры 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 используется для редактирования, создания новой или копирования существующей записи регистра.
Режим формы определяется следующим образом:
- Если передан параметр KeyValue<N>, то форма переходит в режим редактирования.
- Если передан параметр CopyKeyValue<N>, то форма переходит в режим копирования.
- Если параметры 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 предназначена для редактирования (добавления) строки табличной части. Вызывается, если у элемента управления V8EditGrid установлено свойство EditInSeparateWindow
IBAlias
Имя информационной базы. Используется в том случае, если приложение работает с несколькими информационными базами данных. Значение по умолчанию – пустая строка.
TableName
Имя табличной части.
ColumnsList
Разделенный точкой с запятой (;) список отображаемых полей строки табличной части.
HiddenColumnsList
Разделенный точкой с запятой (;) список неотображаемых полей строки табличной части.
Value<N>
Значения полей, редактируемых в форме. Порядок задания значений полей соответствует порядку полей в параметрах ColumnsList и HiddenColumnsList.
Копировать в буфер обмена
Значение задается в форме:значение$$тип$$описаниеТипов
ControlIndex
Задает номер строки табличной части (нумерация начинается с нуля). Если переданное значение меньше нуля, то форма переходит в режим добавления строки табличной части.
ControlName
Идентификатор элемента управления (V8EditGrid), вызвавшего форму для редактирования (добавления) строки табличной части. Используется для обновления отображения табличной части после записи изменений в форме.
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 предназначена для отображения картинок, хранящихся в базе данных. Задается как значение свойства 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 предназначена для отображения отчета без элементов управления. Содержимое этой формы может быть направлено на печать.
ReportID
Задает идентификатор сформированного отчета. Получить значение идентификатора для передачи в форму печати можно следующим образом:
Копировать в буфер обменаstring ReportID ReportSource.UUID.ToString()
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 возвращает данные в виде строки. Формат возвращаемых данных:
Формат данных Описание alert:$$текст Ошибка.
текст содержит сообщение об ошибке.query:$$текст Значений, соответствующих введенной строке, не найдено.
текст содержит текст сообщений.представление$$значение$$списокТипов Найдено одно значение.
представление – представление значения
значение – найденное значение
списокТипов – разделенный запятыми список типовпредставление1$$...$$представлениеN$$значение1$$...$$значениеN$$списокТипов Найдено несколько значений.
представление<N> – представление значения
значение<N> – найденное значение
списокТипов – разделенный запятыми список типовМаксимальное количество возвращаемых значений задано константой ItemsMaxCount.
IBAlias
Имя информационной базы. Используется в том случае, если приложение работает с несколькими информационными базами данных. Значение по умолчанию - пустая строка.
KeyValue, KeyType
Тип поля ввода и текущее выбранное значение. Служат для определения таблицы по которой будет происходить поиск.
KeyPresentation
Введенная пользователем строка, по которой происходит поиск значения.
TypeDescriptionNeeded
Указывает на необходимость считывания описания типов для поддержки связи по типу. Допустимые значения:
- true
- false
ChoiceMode
Указывает режим, в котором находится поле ввода. Допустимые значения:
- Items
- Folders
- FoldersAndItems
Значение Описание Items Поиск осуществляется только по элементам Folders Поиск осуществляется только по группам FoldresAndItems Поиск осуществляется и по группам и по элементам
SelectionName<N>, SelectionValue<N>, SelectionType<N>Значения отбора. В случае одного элемента отбора используется форма SelectionName, SelectionValue, SelectionType. Если установлено несколько отборов, то они задаются в параметрах SelectioinName1, SelectionValue1, SelectionType1, SelectionName2, SelectionValue2, SelectionType2 и т.д. Нумерация начинается с единицы.
SelectionName – имя поля.
SelectionValue – значение отбора.
SelectionType – тип значения. Используется в случае составного типа.ControlName
Идентификатор элемента управления, получающий выбранное значение.
DefaultFieldTreeForm представляет собой форму для выбора поля из списка полей. Список может содержать поля таблицы базы данных или поля результата запроса. Список отображается в виде иерархического элемента управления.
Используется для настройки отчетов пользователем.IBAlias
Имя информационной базы. Используется в том случае, если приложение работает с несколькими информационными базами данных. Значение по умолчанию - пустая строка.
SelectionValue
Список полей верхнего уровня иерархического представления. Состоит из значений, разделенных символом $. Значения объединены в тройки элементов.
Элемент Описание Первый элемент Имя поля Второй элемент Представление поля Третий элемент Разделенный запятыми список типов
Пример: Копировать в буфер обменаКоличествоОстаток$КоличествоОстаток$decimal$Номенклатура$Номенклатура$СправочникСсылка_Номенклатура$Склад$Склад$СправочникСсылка_Склады
InitialValue
Выбранное значение. Узел выбранного значения при первоначальном отображении раскрыт.
ControlName
Идентификатор элемента управления, получающий выбранное значение.