как выполнить произвольную процедуру из модуля?
☑
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
вообще отлаживается нормально, ставишь точку остановки в СВОЙ модуль и вперед.
Куда сложнее отлаживать отчеты которые в регламентных заданиях выполняются.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший