Опубликован: 06.12.2011 | Доступ: свободный | Студентов: 3557 / 746 | Оценка: 4.50 / 4.39 | Длительность: 03:42:00
Лекция 7:

Построение распределенных информационных систем, поиск, регламентные задания, функциональные опции

< Лекция 6 || Лекция 7: 12345678910

В процедуре ПриСозданииНаСервере() мы, при создании нашей формы на сервере, во-первых, инициализируем реквизиты РазмерПорции и ПорогНечеткости, во-вторых – скрываем кнопки Назад и Вперед.

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

При входе в серверную процедуру ВыполнитьПоискСервер(), мы инициализируем переменную СпПоиска – она будет содержать список полнотекстового поиска, настраиваем параметры поиска, устанавливая строку поискового запроса, порог нечеткости, размер порции, выполняем поиск, записываем реквизит НачальнаяПозиция, выводим сообщение о результатах поиска и устанавливаем доступность кнопок, после чего выводим найденные данные в виде HTML-кода в поле РезультатыПоиска и заполняем реквизит СписокРезультатов.

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

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

На рис. 7.17 вы можете видеть работу с окном поиска. При текущем установленном пороге нечеткости (34 в данном случае) по запросу "Петров" система находит, кроме слова "Петров" еще и "Петр" и "Петрович".

Результаты поиска

увеличить изображение
Рис. 7.17. Результаты поиска

Регламентные задания

В информационных базах 1С:Предприятие 8 существует немало регулярно повторяемых последовательностей действий, которые вполне можно было бы доверить автоматике. Например, это обмен данными с другими информационными системами, резервное копирование информации, обновление поисковых индексов и так далее. Для реализации выполнения подобных работ в 1С:Предприятие предусмотрен механизм регламентных заданий. Реализуем периодически выполняющееся задание. Для этого создадим новый объект конфигурации РегламентноеЗадание (ветвь Общие) с именем ПроверкаРегламентныхЗаданий, рис. 7.18.

Новое регламентное задание

Рис. 7.18. Новое регламентное задание

Регламентное задание нуждается в настройке. В частности, нам нужно задать метод, который оно будет выполнять (свойство Метод) и настроить расписание (Ссылка Расписание).

В качестве метода, который будет выполняться регламентным заданием, может выступать процедура неглобального общего модуля, которая может быть исполнена на сервере. Для задания такой процедуры создадим новый общий модуль (Общие модули в ветви Общие), назовем его МодульДляЗадания, установим флажки Сервер, и ВызовСервера рис. 7.19.

Новый модуль для процедуры, реализующей регламентное задание

Рис. 7.19. Новый модуль для процедуры, реализующей регламентное задание
< Лекция 6 || Лекция 7: 12345678910
Константин Павлов
Константин Павлов

Почему в лекции 1 "Основы организации бухгалтерской подсистемы" курса "Разработка прикладных решений для платформы 1С:Предприятие 8.2 в режиме "Управляемое приложение"" совершенно нет информации о том что нужно на вкладке данные в табличной части создать табличную часть "ВидыСубконто" и также нет информации о том какие нужно добавить реквизиты и какие у этих реквизитов должен быть тип? Считаю лекцию 1 в данном вопросе недоработанной.

Надежда Федулкина
Надежда Федулкина