Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Saitistika 4.0.Руководство разработчика.2005

.pdf
Скачиваний:
11
Добавлен:
23.08.2013
Размер:
3.22 Mб
Скачать

oTests.GetInfo FolderID, UserInfo.UserID

oTests.ExportLeftMenu

oPD.StartPageBody

oPD.LeftNavigation

oPD.DividePageBody

oPD.ContentHeading IndexFolderInfo oTests.Show

oPD.EndPageBody

%>

Copyright © 2005 Individ company

Страница

Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464

141 из 141

 

 

Формы

Предназначены для получения произвольной информации от пользователей. Формы можно использовать как автономно, в виде разделов, так и прикреплять их к материалам системы. Формы являются разделами сервера и создаются через структуру также как и другие разделы. Общие свойства формы настраиваются на странице свойств раздела «Форма». Редактирование полей формы и специфическая настройка осуществляется на странице «Интерактив - Формы».

Логика работы

Критерии корректности

Корректная форма содержит хотя бы одно поле.

Конструирование и вывод формы

Сконструированная форма хранится в базе данных в виде наборов записей связанных таблиц. Эти записи описывают внешний вид и поведение формы на фронофисе. При загрузке страницы с внедренной формой информация о наборе полей, обязательности их заполнения, значениях полей по-умолчанию и т.д. считывается из базы данных и, на основе этой информации, генерируется соответствующий требуемой форме HTML-код.

Для хранения данных форм с произвольным набором полей применяется универсальное хранилище данных, являющееся переходным звеном между необъектной и объектной моделью. В ближайшем будущем вся работа с формами будет построена на основе объектной модели.

Работа системы хранения основывается на принципах конструирования объектов, которые аналогичны принципам, заложенным в объектную модель. Каждое свойство объекта описывается одним полем формы, таким образом становится известна информация о типе данных поля, признаке обязательности его заполнения и т.д. Главное идеологическое отличие состоит в том, что в данном случае набор атрибутов конфигурируется индивидуально для каждого создаваемого объекта. Вместо термина «Атрибут» употребляется термин «Поле». Нет понятия «Тип», «Подтип» и т.д. Можно работать с созданной формой, создав раздел структуры. Ни с какими другими сущностями форма не связывается. Благодаря применению форм для описания свойств объекта становится возможным динамическое изменение свойств объектов.

Проверка заполнения обязательных полей

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

Если в свойствах поля типа «ниспадающее меню», не выбран ни один вариант ответа, то во время выполнения скрипта фронтофиса к его вариантам добавляется служебный вариант «Выберите вариант». Поле с выбранным служебным вариантом считается незаполненным.

Обработка результатов заполнения

В формах не предусматривается интерактивная обработка результатов заполнения. Нельзя настроить форму на выполнение какого-либо действия в зависимости от каждого конкретного заполнения полей формы. Модуль «Формы» просто получает данные от пользователя и записывает эти данные в базу данных без предварительной обработки. При этом файлы пользователя загружаются на сервер в папку /common/data/pub/files/forms/[номер заполнения]/[имя файла пользователя], а изображения загружаются в /common/data/pub/images/forms/[номер заполнения]/[имя файла пользователя].

Отправка сообщения о заполнении формы

Результаты заполнения формы дублируются в письме, отправляемом на Email, указанный в свойствах раздела формы.

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

From: Saitistika.Notification <%CONTACT_EMAIL%> Reply-To: %CONTACT_EMAIL%

To: %FORM_EMAIL%

Subject: Результаты заполнения формы “%FORM_NAME%” Message:

Пользователь: %LOGIN%, %ИМЯ% %ФАМИЛИЯ% | Аноним

Email: %USER_EMAIL% URL: %USER_URL%

%FIELD1%: %FIELD1_RESULT1%, %FIELD1_RESULT2% ...

%FIELD2%: <не заполнено>

...

*%FIELDN%: %FIELDN_RESULT%

Copyright © 2005 Individ company

Страница

Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464

142 из 142

 

 

---------------------------------------------------------------

Saitistika.Notification | %CONTACT_EMAIL% | %SERVER_DOMAIN%

База данных

Диаграмма таблиц

 

 

 

Рисунок 36. Диаграмма таблиц базы данных модуля «Формы»

 

 

Описание таблиц

 

 

 

 

Forms - формы

 

 

 

 

Поля

Описание

 

 

Folder

Раздел сервера которым является форма. Подразумевается, что типом этого раздела будет

 

 

«Форма». Название этого раздела является названием формы.

 

 

Form

ID формы из таблицы метаданных.

 

 

Email, ...

Свойства формы, настраиваемые в свойствах раздела.

 

 

FormsIndex – связь форм с результатами их заполнения

 

 

Поля

 

Описание

 

 

Index

 

Идентификатор, при помощи которого объединяются записи таблицы DataStorage.

 

Form

 

ID формы из таблицы метаданных.

 

 

Date

 

Дата и время заполнения формы.

 

 

User

 

ID авторизованного пользователя, заполнившего форму.

 

 

UserLastLogin

 

Здесь хранится логин неавторизованного, но узнанного пользователя, заполнившего форму.

 

MetaDataForms – предназначена для хранения определений форм.

 

 

Поля

 

Описание

 

 

ID

 

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

 

 

TextBegin

 

Вступительный текст формы.

 

 

TextEnd

 

Заключительный текст формы.

 

 

ErrorBegin

 

Начало общего сообщения об ошибке.

 

 

ErrorEnd

 

Конец общего сообщения об ошибке.

 

 

ErrorTemplate

 

Шаблон сообщения об ошибке заполнения поля.

 

 

MetaDataFields – предназначена для хранения полей форм.

 

 

Поля

 

Описание

 

 

ID

 

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

 

 

Form

 

Форма, которой принадлежит поле.

 

 

 

 

 

 

 

 

 

Copyright © 2005 Individ company

Страница

 

 

 

Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464

143 из 143

Title

Название поля.

Description

Описание поля.

FieldType

Тип поля. Типы хранятся в таблице MetaDataFieldTypes.

ErrorMessage

Сообщение об ошибке заполнения поля.

Options

Параметры поля. Установленный бит 1 означает, что поле обязательно к заполнению. Бит 2

 

определяет видимость поля.

Position

Порядковый номер поля.

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

Поля

Описание

ID

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

Field

Идентификатор поля.

Title

Название варианта.

Options

Параметры варианта. Если установлен бит 1, вариант является дефолтным (выбранным при

 

 

отображении формы).

Position

Порядковый номер варианта.

Таблица DataStorage – результаты заполнения формы.

Поля

Описание

ID

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

Index

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

Form

ID формы.

Field

ID поля, на которое был получен ответ.

Float

Поле для хранения числовых данных.

Text

Поле для хранения текста.

DateTime

Поле хранения даты.

Variant

Поле для хранения ID выбранного варианта ответа.

Таблица MetaDataFieldTypes – типы полей.

ID

 

Title

1

 

Заголовок

2

 

Комментарий

3

 

Поле для загрузки файла

4

 

Поле для загрузки изображения

5

 

Ниспадающее меню

6

 

Группа радиобоксов

7

 

Группа чекбоксов

8

 

Поле для текста

9

 

Большое поле для текста

10

 

Поле ввода пароля

11

 

Поле для числа

12

 

Поле для даты

Хранимые процедуры

Forms_ListTree Forms_LoadProperties Forms_SaveProperties

Классы

UML-диаграмма

Copyright © 2005 Individ company

Страница

Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464

144 из 144

 

 

Рисунок 37. UML-диаграмма классов модуля «Формы»

Список классов

CWebForm CDataStorageValue CMetaDataForm CMetaDataField

Функции form-functions.asp

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

1. Выполнить инициализацию фронтофиса, подключить файлы фронтофиса и т.д.

<!--#include file="form-functions.asp" -->

2. Создать объект «форма» и загрузить ее данные из базы.

Dim Form : Set Form = New CWebForm

Form.Load(FolderInfo.ID)

3. Обработать отправку формы.

‘ Пользователь нажал Submit?

If Uploader.Fields("submit_form") <> "" Then

‘ Проверить форму на корректность заполнения.

Dim ErrorMessage : ErrorMessage = Form.Validate(Uploader)

‘ Если все в порядке, сохраняем введенные данные в базе,

Copyright © 2005 Individ company

Страница

Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464

145 из 145

 

 

‘ при необходимости отправляем e-mail или делаем переход на другую страницу.

If Form.IsInvalid Then

Пользователь неверно заполнил форму,

вывести сообщение об ошибке.

Response.Write ErrorMessage

Else

Form.Submit(Uploader)

Пользователь успешно заполнил форму,

вывести сообщение об успешном заполнении.

Form.ShowMessage

End If

End If

4.Вывести форму.

Form.Show "form", "submit_form", "", Uploader

Copyright © 2005 Individ company

Страница

Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464

146 из 146

 

 

Списки рассылки

Списки рассылки предназначены для рассылки писем подписавшимся на них пользователям в ручном и/или автоматическом режиме. Рассылаться может как статическое содержание с присоединенными файлами (аттачами), так и динамическое содержание (содержимое страниц веб-сайтов). Поддерживается рассылка в текстовом и HTML- форматах.

Логика работы

Фронтофис

Подписка (или отписка) на список рассылки происходит на странице списка или списков рассылки, а также на страницах регистрации и редактирования персональных данных. Для работы со списками рассылки служит класс CMailList.

При подписке пользователь указывает предпочтительный формат рассылки. Если у списка рассылки активны оба формата (текстовый и HTML), то пользователь получает письмо в предпочтительном формате, иначе пользователь получает письмо в аактивном формате списка рассылки. Все подписавшиеся пользователи получают письма по всем расписаниям, указанным в свойствах списка рассылки.

Если при сабмите формы подписки (регистрации) произошли реальные изменения состояния подписки пользователя, то на его email высылается письмо с уведомлением об изменении подписки или письмо для подтверждения состояния подписки. Письмо для подтвержения состояния подписки высылается, если один или более спосков рассылки требуют подтверждения состояния подписки. Пользователь может либо проигнорировать письмо о подтверждении, либо перейти по указанному в письме адресу для подтверждения изменений. Подтверждаются изменения для всех требующих подтверждения списков рассылки одновременно. После подтвержедния состояния подписки использование той же подтверждающей ссылки становится невозможным. Список рассылки может затребовать подтверждения изменения состояния подписки, если

подписку меняет незарегистрированный пользователь и при этом в свойствах списка рассылки отмечен чекбокс «Неавторизованные пользователи должны подтверждать подписку и отписку». С момента изменения пользователем состояния подписки, требующего подтверждения, до момента подтверждения состояния подписки реальное состояние подписки пользователя не меняется, но изменяется видимое для пользователя состояние его подписки (включенность/выключенность чекбоксов).

В следующей таблице показано, как меняется состояние подписки для списка рассылки, требующего подтверждения изменений состояния подписки и отписки:

 

Текущее состояние подписки

 

Пользователь

 

 

 

подписывается

отписывается

 

Не подписан

Подписан (требуется подтверждение)

Не подписан

 

Подписан (требуется подтверждение)

Подписан (требуется подтверждение)

Не подписан

 

Подписан

Подписан

Не подписан (требуется подтверждение)

 

Не подписан (требуется подтверждение)

Подписан

Не подписан (требуется подтверждение)

Списки рассылки на фронтофисе тесно связаны с подсистемой регистрации и авторизации. Некоторые методы класса CMailList предназначены для использования на страницах регистрации и авторизации. Если на сайт заходит анонимный пользователь, подписывается на некоторые рассылки, а затем регистрируется, то класс CMailList обеспечивает переход состояния подписки с анонимного пользователя на вновь зарегистрированного (т.е. для нового пользователя запись в таблице Clients не создается, используется уже существующая запись). Формированием полей подписки в формах регистрации и авторизации и обработкой POST для этих полей также занимается класс CMailList.

Стандартные скрипты рассылок

В поле «Скрипт динамического содержания (URL)» в свойствах списка рассылки вбэкофисе можно указать URL любой html- или текстовой страницы, но существуют два стандартных ASP-скрипта, находящихся в каталоге темы, которые служат для формирования тела письма, состоящего из списка материалов из какого-либо каталога за определенный период времени. Скрипт текстовой версии рассылки имеет имя maillist-text.asp, скрипт html-версии имеет имя maillist-html.asp. Помимо вывода содержимого материалов скрипт html-версии выводит также баннеры (необходимо помнить, что ссылки от них выставляются такие, какие введены в бэкофисе, и, например, относительные ссылки из письма не будут работать) и материалы, указанные в свойствах списка рассылки. Оба скрипта могут принимать одинаковый список параметров:

folder – обязательный параметр. Значение идентификатор раздела, из которого следует брать список материалов (материалы берутся из указанного раздела со всеми его подразделами).

maillist – необязательный параметр. Значение идентификатор раздела списка рассылки, из которого брать настройки для вывода баннеров и материалов (идентификаторы которых задаются в свойствах списка рассылки). Параметр используется только скриптом html-версии.

content – необязательный параметр. Указывает, следует ли выводить содержание материалов или только краткую

Copyright © 2005 Individ company

Страница

Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464

147 из 147

 

 

сопроводительную надпись и ссылку. Если значение параметра равно «on», то выводится полное содержание материалов. Во всех остальных случаях выводится только краткая сопроводительная надпись.

interval – необязательный параметр. Указывает временной интервал от текущего времени в прошлое, за который выбираются материалы из указанного раздела. Значением параметра являются одна или несколько строк,

перечисленных через запятую, вида «years:N1», «months:N2», «days:N3», «hours:N4», «minutes:N5», «seconds:N6»,

где N1, …, N6 – числа. Например: «interval=days:5,hours:6» - вывести список материалов за 5 дней и 6 часов. Если параметр interval не указан, то выводится список материалов за один день.

Бэкофис

Списки рассылки рассылаются через универсальный механизм выполнения заданий по расписанию задание» применительно к спискам рассылки это рассылка списка рассылки). Описание этого механизма см. ниже. Тип задания для отправки списков рассылки имеет мнемонику «SendMail». Соответствующий тип объекта Список рассылки») имеет мнемонику «ML». Хотя с точки зрения Saitistika список рассылки является разделом и применение мнемоники типа «DF» (раздел) для него в некоторых случаях оправдано, но тип задания SendMail не сопоставлен типу объекта DF, поэтому при работе с заданием типа SendMail обязательно следует использовать тип объекта ML.

Подгруженные к списку рассылки файлы ялвяются стандартными объектами типа «Файл». Так как Schedule-сервером может быть не компьютер с IIS, а другой компьютер, то в случае наличия подгруженных к списку рассылки файлов при рассылке путь к аттачам определяется по следующим правилам:

1.В таблице FilesPaths (конфигурируется через страницу настроек поиска файлов в бэкофиса) стандартным способом по физическому пути ищется сетевой путь к файлу. Если сетевой путь к файлу найден, то он используется при рассылке.

2.Если сетевой путь к файлу не найден, то аналогично ищется виртуальный путь к файлу (через http://…). Если виртуальный путь к файлу найден, то он используется при рассылке.

3.Если и сетевой путь к файлу не найден, то при рассылке используется локальный путь к файлу. Т.к. файлы хранятся на компьютере с IIS, то если Schedule-сервер является другим компьютером, такие аттачи будут «битыми».

При подписке на список рассылки на фронтофисе пользователь указывает предпочтительный формат рассылки (текстовый или HTML). Если для списка рассылки активны оба эти формата, то письмо пользователю отправляется в предпочтительном формате. Если для списка рассылки активен только один формат, то пользователю высылается письмо в этом формате независимо от его предпочтения. На адрес, указанный в поле «Обратный Email (поля "FROM", "REPLY-TO")» списка рассылки, приходят все активные версии рассылки.

Список рассылки рассылается по всем активным расписаниям либо по нажатию кнопки «Сохранить и произвести рассылку». При нажатии кнопки «Сохранить и произвести рассылку» в случае, когда соответствующего файла задания Windows Task Scheduler нет:

1.Если в свойствах системы указано, что логин и пароль Windows-пользователя, под которым будут создаваться и запускаться расписания, задает администратор, то файл расписания создается автоматически с заданными администратором логином и паролем Windows-пользователя, затем выполняется принудительно.

2.Если в свойствах системы указано, что логин и пароль Windows-пользователя, под котороым будут создаваться и запускаться расписания, задает пользователь, то происходит переход на страницу стандартного пользовательского интерфейса для создания нового расписания с передачей параметра run=1 (принудительный запуск после сохранения).

Разрешение проблем

Если при принудительной рассылке или рассылке по расписанию письма не приходят, то необходимо проверить и выполнить следующее:

1.В журнале событий просмотреть последние события типа «Отправление сообщения». Если при отправке сообщения возникают неуспешные события этого типа, то причина ошибки находится в детальной информации по этим типам событий.

2.Если в журнале событий события «Отправление сообщений» не появляются, то нужно убедиться, что введены правильный логин и пароль Windows-пользователя, под которым запускается расписание и этот пользователь имеет доступ к базе данных. Если есть доступ непосредственно к Windows Task Scheduler-у, то этот пункт можно пропустить.

3.Открыть Windows Task Scheduler и просмотреть его журнал и/или результат последнего выполнения соответствующего задания на предмет поиска ошибок.

4.Если ошибок не найдено, открыть свойства соответствующего файла задания в Windows Task Scheduler, скопировать значение поля Run, вставить его в командную строку, удалить параметр //B и отладить wsf-скрипт.

Механизм выполнения заданий по расписанию

Данный механизм служит для выполнения заданий по расписанию или по требованию для объектов системы. Каждому типу объектов в системе может быть сопоставлено в общем случае несколько типов заданий. Задание это действие, выполняемое с объектом системы. С точки зрения Windows, конкретное задание конкретного типа для конкретного объекта

Copyright © 2005 Individ company

Страница

Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464

148 из 148

 

 

это файл задания в Windows Task Scheduler. Из Saitistika можно сооздавать, изменять и удалять такие задания и их расписания, а также запускать эти задания принудительно.

Логика работы

Типы заданий хранятся в таблице ScheduleTypes, содержащей три поля: Type – уникальная мнемоника типа задания и одновременно идентификатор задания (job) в wsf-файле; Name – понятное для пользователя название типа задания; ScriptName – имя wsf-файла задания.

Типы задания связаны с типами объектов через таблицу ScheduleTypesObjectTypes, имеющую три поля: ScheduleType – мнемоника типа задания; ObjectType – тип объекта, к которому применяется задание (значение поля ID из таблицы Objecttypes); Subtypes – 1, если подтипы указанного типа объектов (если есть) должны наследовать указанный тип задания, или 0, если подтипы объектов не должны наследовать тип задания.

При выполнении задания выполняется wsf-скрипт, имя файла которого берется из поля ScriptName таблицы ScheduleTypes. Из этого скрипта выполняется job с идентификатором, равным мнемонике типа задания (поле Name из таблицы ScheduleTypes). Таким образом, в один wsf-файл можно поместить скрипты для нескольких заданий. Скрипту передаются следующие неименованные параметры:

1.Имя сервера БД (тип – string)

2.Имя базы данных (тип – string)

3.Идентификатор объекта (тип – simple)

4.Двухсимвольная мнемоника типа объекта (поле Type из таблицы ObjectTypes) (тип – string)

Файлы скриптов для всех типов заданий должны находиться в одной директории. По умолчанию это директория <путь к БО>\VBScripts. Следует отметить, что формат wsf не ограничивает выбор скриптовых языков, поэтому скрипты можно писать на любом скриптовом ActiveX-языке, необязательно на VBScript. Директорию со скриптами можно перенести в другое место, при этом в общих настройках системы следует изменить значение поля «Локальный путь до скриптов на Schedule-сервере». В этом поле должен быть указан путь до директории со скриптами заданий, локальный либо сетевой «с точки зрения» Schedule-сервера.

Внимание!

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

Иерархия директории VBScripts:

VBScripts

Wsf-скрипты для типов заданий

Include

Пустая

Common

Общие vbs-инклюды для облегчения написания скриптов для

 

типов заданий.

Specific

Инклюды, специфичные для какого-либо типа заданий.

Функции и классы в общих vbs-инклюдах в основном аналогичны одноименным функциям и классам из asp-инклюдов Сайтистики и адаптированы для использования в wsf-скриптах.

Конкретные задания для конкретных объектов системы хранятся в виде заданий Windows Task Scheduler-а. Работа с

Windows Task Scheduler-ом производится через компонент интеграции с Windows Task Scheduler и класс CScheduler. Если после создания объекта класса CScheduler значение свойства IsComputerAccessDenied этого объекта равно true, то доступа к расписаниям на Schedule-сервере у текущего NT-пользователя нет. Формат имени задания в Task Scheduler определяется классом CScheduler и имеет следующий вид:

SaitistikaTask[имя_базы_данных].тип_расписания.тип_задания.тип_объекта

Таким образом, существует взаимно однозначное соответствие между файлом задания и совокупностью <тип расписания, тип задания, тип объекта> для каждой базы данных. Задание Windows Task Scheduler-а запускает cscript.exe, который, в свою очередь, запускает wsf-файл задания с необходимыми параметрами. Поэтому, на каком бы компьютере ни находились wsf- файлы заданий, исполняются они на Schedule-сервере.

Задание Windows Task Scheduler-а выполняется под NT-пользователем, заданным в файле этого задания. Если скрипт подключается к базе данных MSSQL через Trusted Connection, то соединение происходит под этим же пользователем.

Copyright © 2005 Individ company

Страница

Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464

149 из 149

 

 

Стандартный пользовательский интерфейс

Пользовательский веб-интерфейс для расписания задания Windows Task Scheduler-а в бэкофисе предоставляется универсальным скриптом /aspscripts/settings/scheduler/schedule.asp. Пользовательский интерфейс позволяет управлять расписаниями задания Windows Task Scheduler-а, создавая сам файл задания при необходимости. Скрипт принимает через строку запроса следующие параметры:

1.ID – идентификатор объекта, для которого редактируется задание

2.oType – двухсимвольная мнемоника типа объекта (поле Type из таблицы ObjectTypes).

3.sType – мнемоника типа расписания (поле Type из таблицы ScheduleTypes).

4.sID – порядоковый номер расписания в задании Windows Task Scheduler-а. Этот параметр является необязательным. Если этот параметр отсутствует, равен нулю или пустой строке, то создается новое задание.

5.backurl – URL страницы, на которую следует перейти после успешного сохранения страницы. Этот параметр является необязательным. Если этот параметр отсутствует или равен пустой строке, то редирект будет произведен на Referer, полученный при первоначальной загрузке страницы. Если значение Referer-а было пустым, то редирект будет произведен на корень сервера.

6.run – необязательный параметр, указывающий, следует ли принудительно запустить задание Windows Task Scheduler-а после успешного сохранения страницы. Расписание будет запущено, если этот параметр указан и его значение равно 1. Во всех остальных случаях расписание не будет принудительно запущено.

Работая через класс CScheduler, скрипт проверяет правильность и взаимную непротиворечивость параметров ID, oType и sType и генерирует ошибку 404 в случае некорректных параметров. Все операции, выполняющиеся с расписанием, логируются.

В пользовательском веб-интерфейсе расписания задания Windows Task Scheduler-а существует блок «Логин Windows- пользователя, под которым будет запускаться расписание». Логика работы этого блока следующая:

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

2.Если файл задания Windows Task Scheduler-а не существует или объект задания (см. компонент интеграции с Windows Task Scheduler) требует обязательного указания логина/пароля пользователя, то блок выводится в виде полей «Логин», «Пароль», «Подтверждение пароля».

3.Если файл задания Windows Task Scheduler-а существует и объект задания не требует обязательного указания логина/пароля, то блок выводится в виде радиобоксов «Использовать существующий» (выбран по умолчанию) и «Изменить». При выборе второго радиобокса на странице появляются поля «Логин», «Пароль» и «Повтор пароля».

База данных

Диаграмма таблиц

Copyright © 2005 Individ company

Страница

Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464

150 из 150