Имя: Пароль:
1C
1С v8
Регламентное задание. Запуск процедуры из обработки
0 Идентификатор
 
26.08.15
08:47
Пытаюсь сделать регламентное задание по выгрузке инфы.

Есть обработка, которая мне в этом поможет, обработку регулярно буду допиливать,добавил обработку в конфу, а из общего модуля пытаюсь получить процедуру модуля объекта обработки. Что то не получается.

Создал общий модуль. В нем одна единственная процедура

Процедура Выгрузка1() Экспорт

Обработки.ВыгрузкаТест.ВыгрузитьТест()

КонецПроцедуры


В обработке, модуля объекта экспортная процедура:

Процедура ВыгрузитьТест() экспорт
    
    ТестФайл = Новый ТекстовыйДокумент;
    ТестФайл.ДобавитьСтроку("Работает");
    ТестФайл.Записать("D:\Backup\upload\тест.txt");
    
КонецПроцедуры

Путь прописан на сервере. Права  usr1cv82 выданы. Но судя по отладчику, затык именно в том, что не видит процедуры обработки.

Как решить задачу?
1 ДенисЧ
 
26.08.15
08:50
t dth./
2 ДенисЧ
 
26.08.15
08:51
в смысле - не верю.
3 Апош
 
26.08.15
08:53
в модуле менеджера обработки нет процедуры
4 Идентификатор
 
26.08.15
08:54
(3) а из модуля объекта разве не получить?
5 Апош
 
26.08.15
08:54
в коде объекта обработки тоже нет
6 Baker_it
 
26.08.15
08:55
Не в модуль объекта, а в модуль менеджера пипши процедуру.
7 Идентификатор
 
26.08.15
08:55
(6) ща попробую
8 Апош
 
26.08.15
08:56
я за объект. ему можно реквизитов поназначать
9 ДенисЧ
 
26.08.15
08:56
(6) не надо давать дурных советов
10 Baker_it
 
26.08.15
08:57
(4) Получить. Только так вот:

ОбработкаОбъект = Обработки.ВыгрузкаТест.Создать();
ОбработкаОбъект.ВыгрузитьТест();

(9)

В чем проблема с советом?
11 ДенисЧ
 
26.08.15
08:58
(10) при том, что менеджер тут совершенно ни причём. Тут именно модуль объекта должен быть
12 Идентификатор
 
26.08.15
08:58
(7)(6) работает, но а как из объекта получить?

(9) ОбработкаОбъект = Обработки.ВыгрузкаТест.Создать(); пробовал и так, так затык на этой строчке происходит
13 Baker_it
 
26.08.15
08:59
(11) Почему должен быть?
14 ДенисЧ
 
26.08.15
09:00
(12) вариант только один - правов нет.
Или второй - кеш.
15 ДенисЧ
 
26.08.15
09:00
(13) по определению.
16 Baker_it
 
26.08.15
09:01
(15) Ну то есть слив защитан. Ок.
17 ДенисЧ
 
26.08.15
09:02
(16) унитаз со счётчиком? Не надо так явно расписываться в своей безграмотности.
18 Baker_it
 
26.08.15
09:03
(17) Бла-бла-бла. Как обычно на этом форуме - куча самомнения, ноль полезной информации.
19 ДенисЧ
 
26.08.15
09:06
(18) особенно от тебя. Если ты не знаешь, чем отличается модуль менеджера от модуля объекта - не давай бесполезных советов
20 Идентификатор
 
26.08.15
09:08
(14) завел юзера с полными правами, через консоль заданий назначил пользователя регламентного задания. В отладчике не может создать обработку..


ОбработкаОбъект = Обработки.ВыгрузкаТест.Создать();

тут и затыкается..
21 Идентификатор
 
26.08.15
09:09
где то на мисте еще вчера видел, что такое должно работать. Ради этого перенес почти весь код специально из формы в объект..
22 Апош
 
26.08.15
09:10
(20) аргументированно затыкается?
23 Идентификатор
 
26.08.15
09:12
(22) ничего не пишет, и не будет, как я понимаю. Отладка же на сервере, просто на след строку не переходит. А затем в консоли пишет, что задание выполнено с ошибками.
24 Cyberhawk
 
26.08.15
09:14
ОбработкаМенеджер.<Имя обработки> (DataProcessorManager.<Имя обработки>)
Создать (Create)
Синтаксис:

Создать()
Возвращаемое значение:

Тип: ОбработкаОбъект.

Описание:

Создает новый экземпляр обработки.

Доступность:

Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).
Пример:

ОбработкаДокументов = Обработки.ОбработкаДокументов.Создать();

Делаю ставку на флажки компиляции ОМ
P.S. И включи отладку на сервере уже
25 Идентификатор
 
26.08.15
09:15
(24) читал это, -debug прописал в регистре. Отладка работает на сервере.
26 Идентификатор
 
26.08.15
09:16
флажки в общем модуле

Сервер, внещнее соединение, Клиент(обычное приложение), вызов сервера
27 Апош
 
26.08.15
09:16
(23) сделай внешнююобработку1 и насилуй в ней свой код, пока не взлетит
28 Baker_it
 
26.08.15
09:17
(19) Не нужно делать выводы космического масштаба и космической же глупости.

Выбор, где расположить процедуру - в модуле объекта, или модуле менеджера остается за программистом, и напрямую зависит от стоящей задачи. Мы эту задачу - не знаем. Поэтому говорить однозначно, как правильно сделать - не можем.

Смысла же располагать алгоритм в модуле объекта, если нам не нужен его контекст - я не вижу. Память она не резиновая.
29 hhhh
 
26.08.15
09:17
тогда стандартный ответ: нет прав на папку D:\Backup\upload у пользователя Usr1cv8
30 ДенисЧ
 
26.08.15
09:18
(28) задачу мы знаем. Запустить конкретный экземпляр обработки.
Отсюда вывод - космические глупости порешь ты.
31 Cyberhawk
 
26.08.15
09:18
"в консоли пишет, что задание выполнено с ошибками" // покажи на картинке + в ЖР еще посмотри, что там пишется
32 Идентификатор
 
26.08.15
09:19
(29) тут все ровно, перенес из модуля менеджера, там работает, создает файл
33 Cyberhawk
 
26.08.15
09:19
Отладчик в точке останова в модуле объекта в процедуре ВыгрузитьТест() останавливается?
34 Идентификатор
 
26.08.15
09:20
(31) ща сделаю.
35 Baker_it
 
26.08.15
09:20
(30) Запустить экземпляр обработки - это не задача. Это один из способов его решения, возможно - не верный.
36 Идентификатор
 
26.08.15
09:36
(31) ссыль http://s019.radikal.ru/i606/1508/14/714053ffe1fd.png

Журнал гляну
37 ДенисЧ
 
26.08.15
09:38
(36) Возьми консоль из мобильных инструментов разработчика - там более подробно видно
38 Идентификатор
 
26.08.15
09:43
(37) я походу понял в чем дело, в журнале ссылается на диалог выбора файла, который находится в другой процедуре. в этом же модуле. там есть кусок кода, где либо используем диалог, либо не используем, зависит от параметра процедуры. Итог такой, прежде чем создать обработку, происходит проверка на серверные процедуры и функции в объекте в целом.


ДенисЧ, спасибо за наводку на журнал регистраций и консоль из мобильных инструментов.

Извиняюсь что ввел в заблуждение, буду исправлять
39 Идентификатор
 
26.08.15
09:53
Взлетело, еще там были обработки прерывания пользователя и состояние, о которых я даже не подумал, когда переносил. Перепелил, теперь выгружается.

Всем спасибо
40 stix2010
 
26.08.15
09:55
мда... пограммисты 1с, они такие пограмисты
41 Идентификатор
 
26.08.15
12:44
в базу знаний v8: Чтение Excel в регламентном задании УТ 11 клиент-сервер надо бы добавить к 56 сообщению, что в этих папках надо добавить папку Desktop