![]() |
|
что может быть не так с регл. заданием | ☑ | ||
---|---|---|---|---|
0
zippygrill
15.04.13
✎
13:41
|
была настроена регл.задание для выгрузки/загрузки данных из периферийной базы. после обновление конфы она перестала выполняться :) как всегда :).
вручную выполняеться при нажатье на "Синхронизировать сейчас". вот наглядный пример что "не вручном" режиме она не выполняеться. на скрине видно что посл. раз выполнилось сегодня в 13:16 и то я нажал на синхр. сейчас. просло больше 900 секунд а она молчит :) https://dl.dropboxusercontent.com/u/9627383/Screens/реглЗадание.jpg |
|||
1
Нуф-Нуф
15.04.13
✎
13:44
|
блокировка регламентных заданий?
|
|||
2
zippygrill
15.04.13
✎
13:46
|
галочка не включена :)
|
|||
3
vtolga
15.04.13
✎
13:46
|
От какого пользователя сервер стартует? Может, ему каталог обмена недоступен (если обмен через каталог)
|
|||
4
Нуф-Нуф
15.04.13
✎
13:47
|
а журнал регистрации говорит чего-нибудь?
|
|||
5
zippygrill
15.04.13
✎
13:48
|
(3) USR1cv8 - так было всегда. и если бы у него небыло бы прав на этот фтп ресурс то в ошибках бы видел.
|
|||
6
zippygrill
15.04.13
✎
13:49
|
я для начало пытаюсь локализовать причину невыполнения регл.задании. вроде в настройках самой регл. задание все четко
|
|||
7
zippygrill
15.04.13
✎
13:53
|
в список всех регл. заданиях она неопределено(первое для выгрузки, 2-я для загрузки)
|
|||
8
zippygrill
15.04.13
✎
13:53
|
||||
9
zippygrill
15.04.13
✎
16:14
|
открыв регл.задание вижу что поле Пользователь не заполнено(в копии базы до обновление также незаполено). хорошо. В ЖР вижу ошибку которая ссылается на такой кусок кода:
Процедура ПроверитьВозможностьВыполненияОбменов() Экспорт Если Не Пользователи.РолиДоступны("ВыполнениеСинхронизацииДанных, НастройкаСинхронизацииДанных") Тогда ВызватьИсключение НСтр("ru = 'Нет прав на выполнение обменов данными.'"); КонецЕсли; КонецПроцедуры как понять регл.задание выполняеться от имень текущего пользователя или USR1CV82 раз ругаеться на процедуру выше. |
|||
10
zippygrill
15.04.13
✎
16:27
|
короче тут все ясно. регл. задание выполняется от имень тек пользователя
Функция РолиДоступны(Знач ИменаРолей, Пользователь = Неопределено) Экспорт Если ЭтоПолноправныйПользователь(Пользователь, , Ложь) Тогда Возврат Истина; КонецЕсли; УстановитьПривилегированныйРежим(Истина); Если Пользователь = Неопределено ИЛИ Пользователь = АвторизованныйПользователь() Тогда ПользовательИБ = ПользователиИнформационнойБазы.ТекущийПользователь(); ИначеЕсли ТипЗнч(Пользователь) = Тип("ПользовательИнформационнойБазы") Тогда ПользовательИБ = Пользователь; Иначе // Указан не текущий пользователь. ПользовательИБ = ПользователиИнформационнойБазы.НайтиПоУникальномуИдентификатору( ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Пользователь, "ИдентификаторПользователяИБ")); Если ПользовательИБ = Неопределено Тогда Возврат Ложь; КонецЕсли; КонецЕсли; УказанТекущийПользовательИБ = ПользовательИБ.УникальныйИдентификатор = ПользователиИнформационнойБазы.ТекущийПользователь().УникальныйИдентификатор; МассивИменРолей = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(ИменаРолей); Для каждого ИмяРоли Из МассивИменРолей Цикл Если УказанТекущийПользовательИБ Тогда Если РольДоступна(СокрЛП(ИмяРоли)) Тогда Возврат Истина; КонецЕсли; Иначе Если ПользовательИБ.Роли.Содержит(Метаданные.Роли.Найти(СокрЛП(ИмяРоли))) Тогда Возврат Истина; КонецЕсли; КонецЕсли; КонецЦикла; Возврат Ложь; КонецФункции |
|||
11
zippygrill
16.04.13
✎
09:18
|
ребята помогите понять как действует система в таком случае.
регл. задание должно выполняьтся в 10:00. если база НЕ запущена то регл.задание будет выполняться или нет исходя из сл. кода: Процедура ПроверитьВозможностьВыполненияОбменов() Экспорт Если Не Пользователи.РолиДоступны("ВыполнениеСинхронизацииДанных, НастройкаСинхронизацииДанных") Тогда ВызватьИсключение НСтр("ru = 'Нет прав на выполнение обменов данными.'"); КонецЕсли; КонецПроцедуры Функция РолиДоступны(Знач ИменаРолей, Пользователь = Неопределено) Экспорт Если ЭтоПолноправныйПользователь(Пользователь, , Ложь) Тогда Возврат Истина; КонецЕсли; УстановитьПривилегированныйРежим(Истина); Если Пользователь = Неопределено ИЛИ Пользователь = АвторизованныйПользователь() Тогда ПользовательИБ = ПользователиИнформационнойБазы.ТекущийПользователь(); ИначеЕсли ТипЗнч(Пользователь) = Тип("ПользовательИнформационнойБазы") Тогда ПользовательИБ = Пользователь; Иначе // Указан не текущий пользователь. ПользовательИБ = ПользователиИнформационнойБазы.НайтиПоУникальномуИдентификатору( ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Пользователь, "ИдентификаторПользователяИБ")); Если ПользовательИБ = Неопределено Тогда Возврат Ложь; КонецЕсли; КонецЕсли; УказанТекущийПользовательИБ = ПользовательИБ.УникальныйИдентификатор = ПользователиИнформационнойБазы.ТекущийПользователь().УникальныйИдентификатор; МассивИменРолей = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(ИменаРолей); Для каждого ИмяРоли Из МассивИменРолей Цикл Если УказанТекущийПользовательИБ Тогда Если РольДоступна(СокрЛП(ИмяРоли)) Тогда Возврат Истина; КонецЕсли; Иначе Если ПользовательИБ.Роли.Содержит(Метаданные.Роли.Найти(СокрЛП(ИмяРоли))) Тогда Возврат Истина; КонецЕсли; КонецЕсли; КонецЦикла; Возврат Ложь; КонецФункции |
|||
12
zippygrill
21.04.13
✎
00:02
|
Ап
|
|||
13
sanja26
21.04.13
✎
00:52
|
(11) будет.
В клиент-серверном варианте работы запуск регламентных заданий по расписанию осуществляет менеджер кластера. Таким образом, даже если с информационной базой не установлено ни одного клиентского соединения, регламентные задания будут выполняться (при условии, что они не запрещены для конкретной информационной базы) http://v8.1c.ru/overview/Term_000000154.htm |
|||
14
sanja26
21.04.13
✎
00:54
|
Если Пользователь = Неопределено ИЛИ Пользователь = АвторизованныйПользователь() Тогда
ПользовательИБ = ПользователиИнформационнойБазы.ТекущийПользователь(); по-моему запрещено запускать базу под неавторизованным пользователем, если есть хоть один заведенный пользователь. так что лучше задай пользователя для задания |
|||
15
zippygrill
07.05.13
✎
15:38
|
ну я задал Пользователя для регл. задание. она по прежнему молчит елки палки.
|
|||
16
kosts
07.05.13
✎
15:47
|
Проверь конфигурацию с признаком "Сервер". Возможно в модулях где-то есть функции или еще что, которое запрещено на сервере.
|
|||
17
zippygrill
07.05.13
✎
15:51
|
(16) как ее проверить? ТИИ?
|
|||
18
zippygrill
07.05.13
✎
16:36
|
если я убираю пользователя из этой регл.задание то она начинает выполняться. но в ЖР вижу ошибку о том что у пользователя нету прав на выполнение обмена. тоже самое что в (9) написано
|
|||
19
tomvlad
07.05.13
✎
16:48
|
||||
20
zippygrill
07.05.13
✎
16:49
|
(19) по моему нету у меня доступа к этому разделу сайта. не скопируешь сюда?
|
|||
21
kosts
07.05.13
✎
17:32
|
(18) У пользователя должны быть права на изменение соответствующего плана обмена, вроде.
|
|||
22
zippygrill
07.05.13
✎
18:03
|
ВыполнениеСинхронизацииДанных, НастройкаСинхронизацииДанных; ясно. а у какого пользователя? :)
|
|||
23
Злопчинский
14.05.13
✎
00:16
|
а хз. с аналогичной проблемой столкнулись (не я! но при моем участии) в 2008 году на 8-ке - когда "регламентное задание" при ручном нажатии на кнопку - отрабатывало, а по "расписанию" - фигушки... после этого 8-ка в моих глазах резко поплохела.. ;-) так и сижу на клюшках ;-)
|
|||
24
zippygrill
14.05.13
✎
10:12
|
:)не замедляй с 8.2
|
|||
25
zippygrill
21.05.13
✎
14:46
|
апну свою сагу с регл.заданием :)
|
|||
26
zippygrill
21.05.13
✎
15:05
|
я конечно могу извращаться и конфу менять, убрать функцию "ПроверитьВозможностьВыполненияОбменов()" и пусть выполняется до посинения.
|
|||
27
zippygrill
22.05.13
✎
10:24
|
обновлю.
|
|||
28
zippygrill
23.05.13
✎
08:42
|
было выбрано временное решение закомментировать этот кусок кода где проверяется на наличие прав на выполнение обменов:
Процедура ПроверитьВозможностьВыполненияОбменов() Экспорт //Если Не Пользователи.РолиДоступны("ВыполнениеСинхронизацииДанных, НастройкаСинхронизацииДанных") Тогда //ВызватьИсключение НСтр("ru = 'Нет прав на выполнение обменов данными.'"); КонецЕсли; КонецПроцедуры |
|||
29
zippygrill
23.05.13
✎
08:43
|
посмотрю уже в сл. обновление конфигурации что с этим.
|
|||
30
Infsams654
23.05.13
✎
08:53
|
(29) поставь сразу в обработчике задания ЗаписьЖурналаРегистрации(... , если ничего в РЖ не появляется, то проблему ищем в пользователях, а если есть запись, то по шагам дальше (можно в отладчике, если debug сможешь настроить, или последовательно ЗаписьЖурналаРегистрации(...
|
|||
31
zippygrill
23.05.13
✎
08:56
|
немножко не понял твою мысль. что записать в ЖР?
|
|||
32
Infsams654
23.05.13
✎
09:00
|
(31) ну то, что обработчик сработал, типа "Рег. задание стартовало, ура!!!". Если в ЖР такой записи не появиться, то значит рег. задание не поднялось и надо искать проблему в настройках, если запись в ЖР есть, то далее смотреть, что не так работает в обработчике ...
|
|||
33
Serg_1960
23.05.13
✎
09:13
|
Дабы обсуждение вернулось в нужную канву, напоминаю (0):
"...после обновление конфы она перестала выполняться"(тс) |
|||
34
elisabet
23.05.13
✎
09:24
|
Судя по картинке - это УТ11. В конфигураторе в задании жмем кнопку дополнительно - там есть область данных - общие реквизиты , ставим флаг в "не использовать", выставляем расписание, обновляем конфу, и ву-а-ля, все должно заработать.
|
|||
35
zippygrill
23.05.13
✎
09:27
|
(34) конфигурация Розница 2.0.7.6. Регл.задание была добавлена в режиме предприятие :)
|
|||
36
Serg_1960
23.05.13
✎
09:28
|
Хмм... лет сто назад, в аналогичной ситуации, мне посоветовали почитать СП на тему "РегламентноеЗадание.ИмяПользователя" :)
|
|||
37
zippygrill
23.05.13
✎
09:32
|
(34) есть в конфигураторе регл.задание "СинфронизацияДанных" но я боюсь что она выполняется не только ПоМагазину но и по РабочемуМесту и все остальные "виды обмена".
(36) давай подробно. на всякий случай когда я указываю ИмяПользователя в регл.задание то она вообще вообще не выполняется. |
|||
38
zippygrill
23.05.13
✎
09:34
|
(34) но я твой метод попробую обязательно.
|
|||
39
Infsams654
23.05.13
✎
10:12
|
(38) ну и чё, получилось ?
|
|||
40
zippygrill
23.05.13
✎
10:20
|
(39) сейчас, тут какой-то аврал работы :)
|
|||
41
zippygrill
23.05.13
✎
11:25
|
не дает изменить, говорит
"Обьект ОбщийРеквизит.ОбластьДанных заблокирован" |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |