8.х запустить внешнюю обработку из модуля регламентных заданий 1С 8.2

Тема в разделе "Отчеты и обработки для "1С:Предприятие 8"", создана пользователем Дмитрий Игоревич, 23 май 2013.

  1. TopicStarter Overlay
    Дмитрий Игоревич
    Offline

    Дмитрий Игоревич Опытный в 1С

    Регистрация:
    11 апр 2013
    Сообщения:
    152
    Симпатии:
    0
    Баллы:
    26
    Не подскажете, как запустить внешнюю обработку из модуля регламентных заданий? пробую по такому принципу:
    Код:
    ИмяФайла = ПолучитьИмяВременногоФайла(Константы.ОбработкаЗагрузкиБух.Получить());
    ВнешняяОбработка = ВнешниеОбработки.Создать(ИмяФайла);
    ВнешняяОбработка.ВыполнитьОбработку();
    ругается на котекст метода создать
  2. TopicStarter Overlay
    Дмитрий Игоревич
    Offline

    Дмитрий Игоревич Опытный в 1С

    Регистрация:
    11 апр 2013
    Сообщения:
    152
    Симпатии:
    0
    Баллы:
    26
    Дело в шляпе если кому-то интересно сделал так, добавил регламентное задание и в Модуле регламентных заданий прописал следующую процедуру, далее в самом регламентом задание в имя метода написал: МодульРегламентныхЗаданий.ЗпуститьОбменСФП, вот код:
    Код:
    Процедура ЗпуститьОбменСФП()Экспорт
    
    СсылкаНаОбъект = Справочники.ВнешниеОбработки.НайтиПоКоду("000000004"); //Где Код это код вашей внешней обработки в справочнике ВнешнийОбработки
    ЭтоОбработка = ?(СсылкаНаОбъект.ВидОбработки = Перечисления.ВидыДополнительныхВнешнихОбработок.Обработка, Истина, Ложь);
    ЭтоОтчет = ?(СсылкаНаОбъект.ВидОбработки = Перечисления.ВидыДополнительныхВнешнихОбработок.Отчет, Истина, Ложь);
    Если НЕ (ЭтоОбработка ИЛИ ЭтоОтчет) Тогда
    Возврат;
    КонецЕсли;
    ИмяФайла = ПолучитьИмяВременногоФайла();
    ДвоичныеДанные = СсылкаНаОбъект.ХранилищеВнешнейОбработки.Получить();
    ДвоичныеДанные.Записать(ИмяФайла);
    Попытка
    Если ЭтоОбработка Тогда
    Форма = ВнешниеОбработки.ПолучитьФорму(ИмяФайла);
    Иначе
    Форма = ВнешниеОтчеты.ПолучитьФорму(ИмяФайла);
    КонецЕсли;
    Если Не Форма = Неопределено Тогда
    Форма.Открыть();
    Иначе
    Сообщить("Форма открываемой обработки или отчета не определена.", СтатусСообщения.БезСтатуса);
    КонецЕсли;
    Исключение
    Если ЭтоОбработка Тогда
    Сообщить("Выбранный файл не является внешней обработкой.
    |Либо, данная обработка не предназначена для
    |запуска в этой конфигурации.");
    Иначе
    Сообщить("Выбранный файл не является внешним отчетом.
    |Либо, данный отчет не предназначена для
    |запуска в этой конфигурации.");
    КонецЕсли;
    КонецПопытки;
    КонецПроцедуры
    
    
  3. TopicStarter Overlay
    Дмитрий Игоревич
    Offline

    Дмитрий Игоревич Опытный в 1С

    Регистрация:
    11 апр 2013
    Сообщения:
    152
    Симпатии:
    0
    Баллы:
    26
    Таак стоп. что-то не срослось, пока что не работает
  4. TopicStarter Overlay
    Дмитрий Игоревич
    Offline

    Дмитрий Игоревич Опытный в 1С

    Регистрация:
    11 апр 2013
    Сообщения:
    152
    Симпатии:
    0
    Баллы:
    26
    :dry: Не ужели никто ниразу не настраивал регламентное задание на запуск внешней обработки
  5. TopicStarter Overlay
    Дмитрий Игоревич
    Offline

    Дмитрий Игоревич Опытный в 1С

    Регистрация:
    11 апр 2013
    Сообщения:
    152
    Симпатии:
    0
    Баллы:
    26
    Так задача решена, добавил обработку в конф-цию и настроил по быстрому регл. задание! а идею с внешними обработками оставил до лучших времен
  6. mialord
    Offline

    mialord Модераторы Команда форума Модератор

    Регистрация:
    31 июл 2009
    Сообщения:
    5.398
    Симпатии:
    40
    Баллы:
    54
    Зачем Вам обработка в регламенте?
    Прописывайте как положено регламент в общем модуле
  7. Yuriy_Alexandrovich
    Offline

    Yuriy_Alexandrovich Профессионал в 1С Команда форума

    Регистрация:
    15 сен 2011
    Сообщения:
    1.275
    Симпатии:
    76
    Баллы:
    54
    год назад решил этот вопрос с использованием дополнительного регистра сведений,
    идея проста - ядро которое запускает обработки из регистра прописываем в общем модуле (нашем)
    получается нужен один регламент на перебор записей регистра и запуска прописанных в нем обработок,
    Регистр содержит информацию - ссылку на обработку в справочнике внешних обработок, переодичность запуска и т.п.
    Добавляем роль на пользование регистром, и усе...
    если какие обработки нужно добавить - добавляем их в справочник (типовой механизм), и прописываем их в регистре.

    Думаю реализаций подобной задачи много.
  8. mialord
    Offline

    mialord Модераторы Команда форума Модератор

    Регистрация:
    31 июл 2009
    Сообщения:
    5.398
    Симпатии:
    40
    Баллы:
    54
    И все равно вернусь к вопросу, ЗАЧЕМ???
    Зачем крутить гайку пассатижами когда подходящий ключ есть!
  9. Yuriy_Alexandrovich
    Offline

    Yuriy_Alexandrovich Профессионал в 1С Команда форума

    Регистрация:
    15 сен 2011
    Сообщения:
    1.275
    Симпатии:
    76
    Баллы:
    54
    Затем, что есть обработки которые очень подвижны в изменениях - загрузки/выгрузки на сайт эл.заказов, собственные наработки обменов с оборудованием, обработки по учету времени и взаимодействием с соотв.оборудованием. А каждый раз лезть изменять конфигурацию и выгонять пользователей не резон и особенно когда есть окно в 1ч в течении всех 24 часов. А если конфа на поддержке ...
  10. mialord
    Offline

    mialord Модераторы Команда форума Модератор

    Регистрация:
    31 июл 2009
    Сообщения:
    5.398
    Симпатии:
    40
    Баллы:
    54
    1. Если конфа на поддержке, значит Вы не пропишите запуск своих обработок.
    2. Если есть наработки которые постоянно модифицируются, окно в 1 час для обновления, то пишется одна конфигурация для администрирования, в ней создаются регламенты, источники данных, любой перечень баз, кодируется назначение регламентов конкретным базам, расписание, доступ к базам и прочая чешуя и не изобретается четырехколесный лисипед.
    Думаю больше задавать вопрос ЗАЧЕМ смысла нет!
  11. TopicStarter Overlay
    Дмитрий Игоревич
    Offline

    Дмитрий Игоревич Опытный в 1С

    Регистрация:
    11 апр 2013
    Сообщения:
    152
    Симпатии:
    0
    Баллы:
    26
    нет Вы не поняли в регламенте просто прописано обработки.мояобработка.создать, а сама обработка просто лежит в обработках , смысл в том что внешнюю обработку запустить не удалось , а почему необходимо внешнюю добавить было потому что эта обработка сразу на несколько конфигураций !

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

Поделиться этой страницей