Почему в лекции 1 "Основы организации бухгалтерской подсистемы" курса "Разработка прикладных решений для платформы 1С:Предприятие 8.2 в режиме "Управляемое приложение"" совершенно нет информации о том что нужно на вкладке данные в табличной части создать табличную часть "ВидыСубконто" и также нет информации о том какие нужно добавить реквизиты и какие у этих реквизитов должен быть тип? Считаю лекцию 1 в данном вопросе недоработанной. |
Построение распределенных информационных систем, поиск, регламентные задания, функциональные опции
В процедуре ПриСозданииНаСервере() мы, при создании нашей формы на сервере, во-первых, инициализируем реквизиты РазмерПорции и ПорогНечеткости, во-вторых – скрываем кнопки Назад и Вперед.
После ввода поискового запроса и нажатия на кнопку ВыполнитьПоиск, выполняется клиентская процедура ВыполнитьПоиск(), которая вызывает клиентскую же процедуру НачатьПоиск(). В процедуре НачатьПоиск мы проверяем, заполнена ли строка поиска, после чего вызываем серверную процедуру ВыполнитьПоискСервер(). При вызове мы передаем параметр НаправлениеПоиска – он содержит строку, в зависимости от ее содержимого мы либо выдаем исходные результаты поиска ("Новый поиск"), либо получаем следующую порцию найденных данных ("Вперед"), либо – предыдущую ("Назад"). Фактически, нажимая кнопки ВыполнитьПоиск, Вперед или Назад мы вызываем одинаковую процедуру поиска, выполняем новый поиск, но при выдаче результатов поиска ориентируемся на значение реквизита НачальнаяПозиция, в итоге – выдаем различные результаты при нажатии на различные кнопки.
При входе в серверную процедуру ВыполнитьПоискСервер(), мы инициализируем переменную СпПоиска – она будет содержать список полнотекстового поиска, настраиваем параметры поиска, устанавливая строку поискового запроса, порог нечеткости, размер порции, выполняем поиск, записываем реквизит НачальнаяПозиция, выводим сообщение о результатах поиска и устанавливаем доступность кнопок, после чего выводим найденные данные в виде HTML-кода в поле РезультатыПоиска и заполняем реквизит СписокРезультатов.
При щелчке по одной из ссылок в поле РезультатыПоиска, срабатывает обработчик РезультатыПоискаПриНажатии(). Здесь мы определяем номер элемента, по которому щелкнул мышью пользователь и открываем форму для объекта, хранящегося в соответствующем элементе списка значений СписокРезультатов.
При перемещении бегунков, связанных с реквизитами ПорогНечеткости и РазмерПорции, вызываются их обработчики ПриИзменении, роль которых – проинформировать пользователя о текущем состоянии данных показателей.
На рис. 7.17 вы можете видеть работу с окном поиска. При текущем установленном пороге нечеткости (34 в данном случае) по запросу "Петров" система находит, кроме слова "Петров" еще и "Петр" и "Петрович".
Регламентные задания
В информационных базах 1С:Предприятие 8 существует немало регулярно повторяемых последовательностей действий, которые вполне можно было бы доверить автоматике. Например, это обмен данными с другими информационными системами, резервное копирование информации, обновление поисковых индексов и так далее. Для реализации выполнения подобных работ в 1С:Предприятие предусмотрен механизм регламентных заданий. Реализуем периодически выполняющееся задание. Для этого создадим новый объект конфигурации РегламентноеЗадание (ветвь Общие) с именем ПроверкаРегламентныхЗаданий, рис. 7.18.
Регламентное задание нуждается в настройке. В частности, нам нужно задать метод, который оно будет выполнять (свойство Метод) и настроить расписание (Ссылка Расписание).
В качестве метода, который будет выполняться регламентным заданием, может выступать процедура неглобального общего модуля, которая может быть исполнена на сервере. Для задания такой процедуры создадим новый общий модуль (Общие модули в ветви Общие), назовем его МодульДляЗадания, установим флажки Сервер, и ВызовСервера рис. 7.19.