![]() |
Модуль менеджера у внешней обработки Есть типовая обработка где есть код в модуле менеджера сохраняю как внешнюю и теперь я не могу добраться до модуля менеджера у внешней обработки подскажите как это сделать? |
Обращение к модулям менеджеров объектов конфигурации происходит через менеджеры соответствующих коллекций. К примеру, Справочник.Номенклатура.ПолучитьСтруктуруОбязательныхРеквизитов(Родитель). У объекта ВнешняяОбработка отсутствует возможность вызова каких либо функций сверх описанных в платформе. Соответственно, говорить о существовании у него менеджера в принципе невозможно. |
тогда еще вопросик (1) подскажите а как в модуле менеджера обработки обратиться к рекизитам или табличным частям этой же обработки? |
(2) + обработка находится внутри конфигурации |
(2) Зачем тогда вообще мучить модуль менеджера? Используй модуль объекта. Смысл модуля менеджера - вызов некоторых серверных функций, концептуально связанных только с указанным объектом, без генерации полноценного объекта. Причина их появления ИМХО - это засилье общих модулей. Перечень из 30-50 общих модулей очень сложно администрируема. При этом концепция управляемых форм строится, в значительной части, именно на внеформенное хранение модулей. Использование для этого модуля объекта - очень плохо. Приходится генерировать менеджер объекта из данных формы. При возврате из объекта в форму происходит полная передача объекта на клиент, что радикально снижает производительность. Найденный выход - модуль менеджера. В нем мы располагаем те процедуры, которые не обращаются к данным объекта, а возвращают лишь небольшие кванты. Например, какую форму открывать по указанному типу реализации или список обязательных реквизитов для пользователя. Громадная дыра в этом построении - это недоступность модуля менеджера на клиенте. В результате опять же растет количество общих модулей с суффиксом Клиент. Обидно, досадно, но... ладно. |
(1)модуль менеджера мне нужен потому что в нем написан код (процедура) это типовая обработка а не собственная, и я хотел переделать в нем код, значит не получится? и выхода нету? а так бы я в своей обработке уже давно бы написал в модуле формы или модуле объекта |
(5) + просто изначально хотел типовую обработку доработать, сохранил как внешнюю, наткнулся на то что модуля менеджера нет, а во внутренней в менеджере есть нужный мне код, стал редактировать внутри конфы, и тоже засада печально |
(5) Переделывать все равно придется. Вызов функции из ММ в другом месте кода выполняется методом Обработки.ЧтоТоТиповое.ТвояФункция(Золото). Т.к. обработка у тебя появится своя, вызов придется переделывать. Это ж тебе не ООП! (6) Всегда можно передать ЭтотОбъект в качестве параметра функции в модуль менеджера. Тогда из ММ можно обратиться к параметрам имеющегося объекта отчета. Это не соответствует концепции использования объектов, но вполне приемлимо с точки зрения читаемости кода и производительности. |
(7) а пример кода можешь привести? |
+(8) как передать ЭтотОбъект в качестве параметра функции в модуль менеджера |
(7) спасибо нашел как передать объект в ММ |
Текущее время: 11:19. Часовой пояс GMT +3. |