Имя: Пароль:
1C
1C 7.7
v7: Есть способ создать и выполнить произвольную формулу в 1С-7 ?
0 MisterI2008
 
10.09.12
15:44
Строку для формулы можно создать просто, например:

Кол = Метаданные.Справочник("Номенклатура").Реквизит();
Для х=1 По Кол Цикл
Рекв = Метаданные.Справочник("Номенклатура").Реквизит(х);
Стр = Шаблон("Форма.[Рекв].Доступность(0)");

//при выполнении получаю "Шаблон.Наименование.Доступность(0)"
//Если этот шаблон стоит в таблице (формула ячейки), значение будет вычислено.

Нет-ли способа выполнить полученную строку, как оператор языка? скажем, в модуле элемента справочника?
1 МихаилМ
 
10.09.12
15:45
или в формекс или в 1с++
есть доп модули
2 MisterI2008
 
10.09.12
15:46
(1)ммм.. понятно, без вк не обойтись.. спасибо!
3 orefkov
 
10.09.12
15:48
Стр = Шаблон("Форма.[Рекв].Доступность(0)");
Шаблон("[" + Стр + "]");
4 MisterI2008
 
10.09.12
15:49
(3)неожиданный вариант :)
Сейчас попробую :)
5 orefkov
 
10.09.12
15:50
Но так можно только функции вызывать, процедуры не получится.
6 antoneus
 
10.09.12
15:52
эмммм

Атр = Форма.ПолучитьАтрибут(Рекв);
Атр.Доступность(0);

не пойдет?
7 Юрий Лазаренко
 
10.09.12
15:52
(4) Этому неожиданному варианту уже сто лет в обед )
8 MisterI2008
 
10.09.12
15:53
(5)а мне функция и нужна..
(6)имеет право на жизнь :)
(7) я не пользовался.. не было причины
9 MisterI2008
 
10.09.12
16:05
докладываю: оба варианта, ув. orefkov и ув. antoneus работают в принципе одинаково, что нужно - я получил.
Потому - отдельное спасибо :)

И спасибо всем!
2 + 2 = 3.9999999999999999999999999999999...