Форум на Kuban.ru (http://forums.kuban.ru/)
-   Территория 1С (http://forums.kuban.ru/f1040/)
-   -   Не работают встроенные функции 8-ки через COM-соединение из 7-ки. Почему? (http://forums.kuban.ru/f1040/ne_rabotayut_vstroennye_funkcii_8-ki_cherez_com-soedinenie_iz_7-ki_pochemu-6138777.html)

US1C 30.09.2014 10:37

Не работают встроенные функции 8-ки через COM-соединение из 7-ки. Почему?
 
Ситуевина следующая.
Подключаю из 7-ки 8-ю базу через V83.ComConnector.
Не отрабатывают встроенные функции. Например:
База.Вычислить("500 + 500*20/100") = Ошибка в выражении!
Или
База.Булево(0) = Ошибка в выражении!
Где База - COM-соединение.
Что не так делаю?

VZ 30.09.2014 12:35

А так?
[em]ЧтоТамУНас = База.Вычислить("500 + (500*20/100)");
ЧемуТоПрисваиваем = База.Булево(Ложь);[/em]

VZ 30.09.2014 12:38

+1 А еще здОрово знать арифметику. За 1-й класс.

VZ 30.09.2014 12:42

Ан нет, Булево() любит токо числа... Уууууу.

VZ 30.09.2014 13:27

Вот на хабре это дело обсуждали: [url]http://habrahabr.ru/post/139272/[/url]
Вот здесь предлагается демо, где настроено внешнее обращение: [url]http://v8.1c.ru/demo-ma/[/url]

US1C 30.09.2014 13:53

(1) Так у меня так было изначально и прерывался код на этом месте с ошибкой. Я тогда просто выражение в отладчике вычислил и получил Сабж. Задача-то у меня стояла присвоение Булево реквизитам создаваемых объектов в 8-й базе. Решил вот так просто и элегантно сделать (через =Булево(0,1)) и обломился.
(4) Спасибо. посмотрю.

VZ 30.09.2014 15:43

5-US1C > Тут вот какое дело... 1С замыслило разделить функционал на клиентский и серверный, где клиенту и интерфейс, и формы, и роли с правами, чтоб лишнее не мельтешило, экран не забивало, и в соблазн не вводило рученками кривыми поковырятся.
Потому имеет значение, как ты этот самый ComConnector (и, главное, откуда) вызываешь... Из Клиента, или чертте откуда - WSH, v77, Buhsoft, ets. И 1С вовсе не горит желанием предоставлять доступ к данным всем, кто юзернэйм из-за плеча углядел: и целостность базы может пострадать, и вообще - дырище в безопасности. А она, между нами, девочками, громко так заявлена ;)
Вкупе с упоминанием Закона о защите персональных данных.
И (держа в уме стремление к многоплатформенности) обрати внимание на общение с конфой через ВЭБ-морду.
Опять же, если интерактивного фейса не требуется (для этого есть Клиент) есть масса способов выставлять по расписанию инфу на внешние носители. В разных форматах.

US1C 30.09.2014 16:12

(6) Это все понятно, директивы &НаКлиенте, &НаСервере. Но COM-соединение тоже не просто так открывается каждому встречному-поперечному, а с авторизацией. И коли я авторизовался, будь добра выдать мне все, что положено. А встроенные функции, что в сабж, доступны в режиме внешнего соединения, чем и является COMConnector. Как говориться, назвался груздем - полезай в кузовок.

VZ 30.09.2014 16:34

7-US1C > Неа ;) Почитай-ка здесь: [url]http://its.1c.ru/db/v83doc#bookmark:cs:TI000000027[/url]


Текущее время: 16:27. Часовой пояс GMT +3.