0
- 02.05.2012 - 13:11
|
Есть типовая обработка где есть код в модуле менеджера сохраняю как внешнюю и теперь я не могу добраться до модуля менеджера у внешней обработки подскажите как это сделать? | |
1
- 02.05.2012 - 15:20
|
Обращение к модулям менеджеров объектов конфигурации происходит через менеджеры соответствующих коллекций. К примеру, Справочник.Номенклатура.ПолучитьСтруктуруОбязатель ныхРеквизитов(Родитель). У объекта ВнешняяОбработка отсутствует возможность вызова каких либо функций сверх описанных в платформе. Соответственно, говорить о существовании у него менеджера в принципе невозможно. | |
2
- 04.05.2012 - 12:47
|
тогда еще вопросик (1) подскажите а как в модуле менеджера обработки обратиться к рекизитам или табличным частям этой же обработки? | |
3
- 04.05.2012 - 12:48
| (2) + обработка находится внутри конфигурации | |
4
- 04.05.2012 - 13:31
|
(2) Зачем тогда вообще мучить модуль менеджера? Используй модуль объекта. Смысл модуля менеджера - вызов некоторых серверных функций, концептуально связанных только с указанным объектом, без генерации полноценного объекта. Причина их появления ИМХО - это засилье общих модулей. Перечень из 30-50 общих модулей очень сложно администрируема. При этом концепция управляемых форм строится, в значительной части, именно на внеформенное хранение модулей. Использование для этого модуля объекта - очень плохо. Приходится генерировать менеджер объекта из данных формы. При возврате из объекта в форму происходит полная передача объекта на клиент, что радикально снижает производительность. Найденный выход - модуль менеджера. В нем мы располагаем те процедуры, которые не обращаются к данным объекта, а возвращают лишь небольшие кванты. Например, какую форму открывать по указанному типу реализации или список обязательных реквизитов для пользователя. Громадная дыра в этом построении - это недоступность модуля менеджера на клиенте. В результате опять же растет количество общих модулей с суффиксом Клиент. Обидно, досадно, но... ладно. | |
5
- 04.05.2012 - 13:50
|
(1)модуль менеджера мне нужен потому что в нем написан код (процедура) это типовая обработка а не собственная, и я хотел переделать в нем код, значит не получится? и выхода нету? а так бы я в своей обработке уже давно бы написал в модуле формы или модуле объекта | |
6
- 04.05.2012 - 13:58
|
(5) + просто изначально хотел типовую обработку доработать, сохранил как внешнюю, наткнулся на то что модуля менеджера нет, а во внутренней в менеджере есть нужный мне код, стал редактировать внутри конфы, и тоже засада печально | |
7
- 04.05.2012 - 15:00
|
(5) Переделывать все равно придется. Вызов функции из ММ в другом месте кода выполняется методом Обработки.ЧтоТоТиповое.ТвояФункция(Золото). Т.к. обработка у тебя появится своя, вызов придется переделывать. Это ж тебе не ООП! (6) Всегда можно передать ЭтотОбъект в качестве параметра функции в модуль менеджера. Тогда из ММ можно обратиться к параметрам имеющегося объекта отчета. Это не соответствует концепции использования объектов, но вполне приемлимо с точки зрения читаемости кода и производительности. | |
8
- 04.05.2012 - 15:41
|
(7) а пример кода можешь привести? | |
9
- 04.05.2012 - 15:42
| +(8) как передать ЭтотОбъект в качестве параметра функции в модуль менеджера | |
10
- 05.05.2012 - 09:35
|
(7) спасибо нашел как передать объект в ММ | |
| Интернет-форум Краснодарского края и Краснодара |