#0
by Aleksey1989
Добрый день. Знаю, что из сервера клиент вызвать никак не получится, но посоветуйте, пжл, что-нибудь. В общем модуле есть процедура с директивой компиляции &НаКлиенте. Необходимо обеспечить ее запуск время от времени. С помощью регламентного задания, насколько мне известно, эту проблему не решить, т.к. там можно указывать только процедуры с директивами компиляции &НаСервере. Подскажите, пжл, выход из ситуации?
#2
by Aleksey1989
Не помогает, при попытке сохранить регламентное задание возникает ошибка "Метод задания не найден"
#4
by DexterMorgan
Знаю, что из сервера клиент вызвать никак не получится, но посоветуйте, пжл, что-нибудь Жж0шь
#5
by Aleksey1989
Проблема в том, что процедура, которая находится в общем модуле, запускает другую клиентскую процедуру. Эту самую другую клиентскую процедуру перенести не получится.
#7
by Aleksey1989
Эта операция должна выполняться периодически, поэтому и сначала решил использовать регл. задания, пока не понял, что они работают только с серверными процедурами. Похоже, придется решить проблему через виндовый диспетчер заданий, другого пути не вижу.
#10
by Nuobu
Так типовую переделай. Не обязательно переделывать именно эту типовую ф-ю. Можно ведь свою наваять. Точно такую же, только она будет делаться на сервере и сделать так, чтобы при обновлении она тоже "обновилась".
#12
by vvp91
В общем модуле доступны только две директивы компиляции &НаКлиенте и &НаСервере. Общие директивы для общих модулей не определены. Вариант следующий: * общий модуль должен иметь признаки "Клиент (управляемое приложение)", "Сервер", "Вызов сервера". * в этом общем модуле 3 метода - первый без директивы компиляции, второй с директивой &НаКлиенте, третий с директивой &НаСервере. * первый метод может быть вызван как из второго метода, так и из третьего; * вызов из клиентского метода формы через второй метод работает на клиенте; * вызов из серверного метода формы через третий метода работает на сервере; Таким образом имеем один метод (первый) как для серверного, так и для клиентского исполнения. В общем случае достаточно не указывать директивы компиляции в общем методе, и нет необходимости писать заглушки с директивами копиляции. "Вызов сервера" у модуля тоже не особенно нужен. Разницу поведения потрохов первого метода на клиенте и на сервере можно организовать через инструкции препроцессора. Проверено для форм, для регл.заданий тестируй сам.
#14
by Aleksey1989
В общем, наиболее лучшим решением для себя я нашел следующее: 1. Создаю внешнюю обработку, в событии открытия формы которой добавляю строку кода запуска необходимой мне процедуры, которая выполняется НаКлиенте в общем модуле. После этого обработка закрывает 1С. 2. Создаю регламентное задание, в котором указываю запуск требуемой базы 1С с обязательным параметром Execute, в котором указываю путь к моей внешней обработке. ПодключитьОбработчикОжидания - этот способ не подойдет мне по той причине, что постоянно д.б. запущен сеанс 1С. П.с. База работает в клиент-серверном режиме.
#16
by Aleksey1989
- описанная последовательность действий. Я создал общий модуль, проставил для него галки Клиент, Сервер, ВызовСервера, создал в нем 3 процедуры: Процедура1 без какой-либо директивы компиляции, Процедура2 с директивой компиляции НаСервере и Процедура3 с директивой компиляции НаКлиенте. Далее создаю регламентное задание, указываю для запуска Процедура2. Процедура2 вызывает Процедура1, а та, в свою очередь, должна вызвать Процедура3, но этого не происходит, т.к. Процедура1 не видит Процедура3. Если я понял , то предполагалась именно такая последовательность, разве не так?
#17
by ДенисЧ
я бы рекомендовал ТС написать заявление по собственному в связи с полным служебным несоответствием
#18
by vvp91
Не совсем так. В твоем случае - убери у процедуры, которую надо вызывать, директиву компиляции &НаКлиенте; - убедись, что общий модуль имеет признаки клиента и сервера.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
В этой группе 1С
- Отчет на СКД неверно считает итоги!
- 1С: Библиотека электронных документов. Стандарты обмена
- javascript. Как задать прототип функции?
- Поделитесь 1CDLib, пожалуйста!)
- Распределенные базы: создание начального образа на сервере 1С + SQL
- Как правильно обновить классификатор банков в УТ11
- Розница 2.1 и взаиморасчеты с поставщиками
- РИБ: возможен ли перенос движений без регистраторов?
- Настройка доступа по автору документа в БП 3.0
- Как запустить v8unpack.exe?
- Программно открыть форму выбора документа 1с 8.3
- Регистр накопления с видом "Остатки" показывает неверные данные.
- v7: ТаблицаЗначений.Заполнить(); что не правильно?
- Новый планировщик. Не срабатывает событие Перетаскивание. Веб клиент
- Шаблоны уведомлений в 1С
- УТ 10.3 Подключение изображений к характеристикам номенклатуры
- Разрешить итоги: Срез последних. Откуда 2 таблицы?
- (УФ) Добавить колонку в форму выбора справочника
- Неактивная кнопка изменить и добавить в программе запуска 1с.
- Выгрузка результата запроса в текстовый файл.