Помощь - Поиск - Пользователи - Календарь
Полная версия: Проведение документа программно.
ITLand: Информационные технологии в управлении бизнесом (EPM, PMO, ERP, MRP II, FRM, CRM, HRM, & 1С:Предприятие 8.3/8.2/8.1/8.0) > Форумы по решениям и платформе "1С:Предприятие 8" (8.3/8.2/8.1/8.0) > Разработка в среде "1С:Предприятие 8" (8.3/8.2/8.1/8.0)
Zalatuy
Итак,есть задача:
1. Документы должны проводиться только программно.
2. я сделал обработку, которая проводит документы.
3. Проведение документов вызывается на сервере.
4. В модуле объекта документа написал код,
который запрещает проведение интерактивно.
5. Тем не менее, при серверном вызове процедуры проведения
программный код на клиенте вызывается.

Вопрос: почему это происходит? Как надо было сделать?

Всем здравствуйте)
Runner
Не очень понятно, если проведение вызывается на сервере, откуда тогда берется клиент ...
Все-таки код запускается начально с клиента?

А если код запускается на клиенте, и нет препроцессоров, которые запрещают определять нужную процедуру на клиенте, то клиент, разумеется, возмет клиентскую копию процедуры. Она ему ближе.
Zalatuy
Цитата(Runner @ Oct 21 2013, 10:49) *
Не очень понятно, если проведение вызывается на сервере, откуда тогда берется клиент ...
Все-таки код запускается начально с клиента?

А если код запускается на клиенте, и нет препроцессоров, которые запрещают определять нужную процедуру на клиенте, то клиент, разумеется, возмет клиентскую копию процедуры. Она ему ближе.

Может я код какой неверно и не там написал?
Runner
Цитата(Zalatuy @ Oct 21 2013, 11:56) *
Может я код какой неверно и не там написал?


Похоже, что не там. Про неверно - только ты можешь определить. Если результат правильный, значит верно.

Самый простой способ отправить процедуру на сервер.
Сделай новый общий модуль и поставь у него только две галки: "Сервер" и "Вызов сервера". Теперь размести свою процедуру в этом модуле и вызывай, откуда надо.
Runner
Забыл уточнить. Ты же работаешь на толстом клиенте?
Zalatuy
Цитата(Runner @ Oct 21 2013, 11:27) *
Забыл уточнить. Ты же работаешь на толстом клиенте?

Эмм...как это узнать?)
Runner
В конфигураторе - Администрирование/Список активных пользователей
Zalatuy
Цитата(Runner @ Oct 21 2013, 11:48) *
В конфигураторе - Администрирование/Список активных пользователей

Да толстый.
Runner
Тогда делай модуль и пробуй. Должно отработать.
Zalatuy
Что то несработало...(((
Zalatuy
Цитата(Zalatuy @ Oct 21 2013, 11:58) *
Что то несработало...(((

Интерактивно значит с помощью кнопочки на форме...вот попробовал с помощью регламентированных задач..и все равно не получается блин.
Zalatuy
Сказали надо копать в сторону ролей))) а где именно не сказали(
Runner
Текст ошибки?
Zalatuy
Цитата(Runner @ Oct 21 2013, 13:06) *
Текст ошибки?

Решил блин. Вообщем запретил ролями проведение интерактивно,убрал код запрета в документе и обработка заработала.
Runner
Поздравляю! smile.gif

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

Если важно исключить влияние прав на саму процедуру проведения, можно ее разместить в привелегированном модуле. Тогда она всегда будет исполняться на сервере и под полными правами.
Zalatuy
Цитата(Runner @ Oct 21 2013, 16:11) *
Поздравляю! smile.gif

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

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

Спасибо за помощь)
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Русская версия IP.Board © 2001-2020 IPS, Inc.