![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как в самой 1C выполнить ее же выражение ?
ANB_Temp © (2006-04-10 12:21:00)Имеем строку с выражением. У 1С есть метод OLE EvalExpr, который позволяет посчитать выражение в виде строки. Но через OLE работать с 1С не могу, т.к. не могу передать свой контекст в вызваемую программу на делфи.
Есть ли в 1С встроенная функция языка, которая позволяет считать выражения динамически ?
Парсер на 1С писать не хочется, т.к. явно будет тормозить.
Сергей М. (2006-04-11 09:54:00) [21]
> ANB © (11.04.06 09:19) [1]
Вот пример VB-скрипта, использующего 1С как OLE-сервер и конкретно его метод EvalExpr():
Set App = CreateObject("V77.Application")
EvalResult = App.EvalExpr("2*2")
MsgBox("Результат вычисления выражения 2 * 2 равен " & EvalResult)
Не вижу никаких проблем сделать тоже самое в Делфи.
tesseract (2006-04-11 09:27:00) [22]что конкретно нужно ?
> Решение нашли - функция Шаблон.
Он же evalExpr.
> Кстати, кто нибудь занимался проблемой подключения к 1С
> через OLE ?
Да, есть пример как считать метаданные. И пройтись по справочникам. 1с через OLE весьма тормозит.
> как мне подключится именно к той, которая вызвала мою процедуру
> из делфи ?
не понял впороса. Та база которая вызвала процедуру по-любому уже создала нужный тебе объект.
ANB (2006-04-11 09:19:00) [23]народ - это я запостил. Новая работа, мой комп еще не подключили, пришлось с чужого постить.
Решение нашли - функция Шаблон.
Кстати, кто нибудь занимался проблемой подключения к 1С через OLE ?
Если на компе стоит несколько 1С, как мне подключится именно к той, которая вызвала мою процедуру из делфи ?