Имя: Пароль:
1C
1С v8
как выполнить произвольную процедуру из модуля?
0 vde69
 
04.07.13
17:04
получаю модуль таким не хитиртым способом

Модуль = Вычислить(Выборка.Идентификатор)


если дальше пишу

Модуль.ПроцедураКотораяЕстьВМодуле() - все работает

а вот как написать если у меня имя процедуры нужно передать в виде параметра?

нужно что-то типа

Процедура СделатьСчастье (модуль, имяПроцедуры, Параметры)
 модуль[имяПроцедуры](Параметры) //это не катит
КонецПроцедуры



ps
разумеется я знаю про        
Выполнить(Выборка.Идентификатор + "." + ИмяРасширения + "(ПараметрыВызоваРасширения, Отказ)");
1 acsent
 
04.07.13
17:06
если знаешь, то зачем спрашиваешь
2 acsent
 
04.07.13
17:07
модуль это не коллекция. нельзя обращаться с помощью []
3 Робинзон Крузо
 
04.07.13
17:10
Выполнить("ИмяМодуля."+"ИмяПроцедуры()");
4 acsent
 
04.07.13
17:12
вообще выполнить лучше избегать ибо отлаживать это очень сложно
5 Робинзон Крузо
 
04.07.13
17:12
А ТС итак пишет такое, что только сам отладить сможет.
6 ЧашкаЧая
 
04.07.13
17:25
(4) Отлаживать это сложно, а как потом в этом разобраться? ИМХО, Выполнить это на уровне Перейти.
7 runoff_runoff
 
04.07.13
17:27
еще вопрос.. как перегрузить оператор +, например ;-)
8 Мыш
 
04.07.13
17:31
(7) Ишь ты, перегрузку операторов захотел )
9 vde69
 
04.07.13
21:45
вообще отлаживается нормально, ставишь точку остановки в СВОЙ модуль и вперед.

Куда сложнее отлаживать отчеты которые в регламентных заданиях выполняются.