Имя: Пароль:
1C
1С v8
Как научить 1с 8.3 выполнить другой язык?
0 Sintez123
 
20.05.13
02:24
Имеются примеры рабочего кода на языках перечисленных ниже. Очень бы хотелось скопировать код языка и запустить через объект. Весь код языка должен быть в обработке 1с. Какой из этих языков реально запускать из обработки 1с? И как это можно сделать?

PHP
Python
Java
C#
C++/CLI
VB.NET
Objective-C

Пример как это работает для языка JScript, который мне бесполезен ниже.

ScrptCtrl = Новый COMОбъект("MSScriptControl.ScriptControl");
ScrptCtrl.Language = "JScript";
ScrptCtrl.AddCode(
       " тут большой и страшный код на JScript "
  }"
);
Хэш = ScrptCtrl.Run("SHA512", Стр);

Это работает, но не то :(
1 Jaap Vduul
 
20.05.13
02:42
Кроме ПХП и Питона остальные языки компилируемые и просто так код на них на исполнение не запустить.
Для .Net можно PowerShell использовать.
Ну и для первых двух, если php.exe или python.exe на компьютере установлены, то просто пишешь свой код в файлик и передаёшь интерпретатору на исполнение.
2 Remark
 
20.05.13
02:47
Пока старших товарищей нет по этой теме нет, вставлю свои пять копеек относительно C#. Слышал, что можно написать дотнет библиотеку, подключиться к ней по КОМ и запустить код. Тут есть некоторые подробности: v8: Доступ к WEB-сервису из 1С 8.2 через https
3 Remark
 
20.05.13
02:48
+2 А, сорри пропустил вот эту часть: "Весь код языка должен быть в обработке 1с".
4 Sintez123
 
20.05.13
03:02
(3) Да, так как значения переменных должны назначаться обработкой, данные должны браться из 1с. Да и переодичность должна быть несколько раз в секунду, хотя бы 5 раз.
5 Jaap Vduul
 
20.05.13
03:27
Для питона, кстати, есть реализация Active Script, т.е. вполне можно через ScriptControl запускать.
http://www.activestate.com/activepython/downloads
6 badboychik
 
20.05.13
03:32
дотнет можно компилировать из текста и выполнять динамически, только вроде права надо админские
7 cathode
 
20.05.13
03:44
Как минимум у Python есть свой движок Active Script. Идет в составе Python Win32 extensions. После установки и регистрации контрола пишем ScrptCtrl.Language = "Python" и наслаждаемся результатом.
8 Vovan_Magadan
 
20.05.13
03:59
В принципе не чего сложного))) нужен просто компилятор PHP, питона (скачать легко)
Кидаем в папку с базой, в 1С кидаем поле и кнопку, нажимаем кнопку сохраняем нужный код в файл(можно и напрямую передать в компилятор, но могут быть ошибки) и уже файл передаём в компилятор.
9 bambazamba
 
20.05.13
04:00
Просто выучи пару конструкций встроенного языка, а не пытайся приделать протез.
10 Sintez123
 
20.05.13
04:58
(9) Да я с этой задачей уже неделю маюсь и забил :) похоже что это сложно реализовать в 1с, хотя кажется что реально
11 Cube
 
20.05.13
05:10
(10) Ну так расскажи нам, а то вдруг (!!!) ты чего-то не знаешь? :)
12 Странность Такая
 
20.05.13
06:33
(10) В чем задача состоит?
13 ЧеловекДуши
 
20.05.13
08:03
(0)Вы не поспешили перейти на 8.3? Так то оно глючное создание :)
Альфа версия, так сказать на свой страх и риск.
14 Кирпич
 
20.05.13
08:51
Судя по обилию языков указанных в (0), нужно написать в 1С "Hello World!"

это так

Сообщить("Привет мир!");
15 KRV
 
20.05.13
09:00
(0) а тебе зачем? выполни в родной среде и забери результат. Не?
16 KRV
 
20.05.13
09:01
+(15) в семерке бы сделал на досуге а остальное от лукавого +"Восьмерка сырая" (с)
17 ice777
 
20.05.13
09:11
(0) яйца курами не командуют.)

тока через сами эти языки.
18 oleg_km
 
20.05.13
10:02
Недавно обсуждали обертку COM для объектов dotNET. Сейчас на нее активно переписываю все нестандартные для 1С функции
19 smotritel
 
20.05.13
10:33
(14) для управляемых форм так писать не стоит (хотя и можно)
;)
20 HeroShima
 
20.05.13
17:43
(1) компилируемость не проблема
21 badboychik
 
20.05.13
17:48
(18) какие например?
22 oleg_km
 
20.05.13
20:41
(21) всякие хеши, сокеты, работа с бинарными данными, там программа на Си++ на 20 экранов
23 Зойч
 
20.05.13
20:58
(22) зачем сокеты в 1с? хеши в 8.3 уже есть
24 SnarkHunter
 
20.05.13
21:34
"Выполнить язык"... Ух, великий и могучий...
25 oleg_km
 
20.05.13
22:22
(23) Ну наверное разрешение на сокеты у тебя нужно было спросить. А хеши мне нужны были еще 3 года назад, а в 1С они появились когда? Не надо - не пользуй, заставляю что ли
26 Pasha
 
20.05.13
23:31
(0)
- Доктор, я когда делаю вот так, у меня здесь болит...
- Не делайте так...

А зачем это надо, да еще 5 раз в секунду?
27 Torquader
 
21.05.13
00:23
Во-первых, ничего не мешает записать код php внутри обработки в файл, выполнить его, передав входные и выходные параметры через файл, а после завершения просто обработать выходной файл.
Другое дело, если вы хотите иметь доступ к данным 1С из исполняемого кода - это уже намного сложнее будет.
28 oleg_km
 
21.05.13
09:10
(27) Другое дело, если вы хотите иметь доступ к данным 1С из исполняемого кода - это уже намного сложнее будет.

Не совсем понял в чем сложность?
29 Demetres
 
28.05.13
08:53
Всем доброе время суток! Ребята, может кто в курсе как из 1С прочитать события журнала безопасности (вход/выход пользователя в систему).
30 Demetres
 
28.05.13
08:57
Нашел команду Get-WinEvent но она падлюка для PowerShell, не знаю как её из 1С запустить :(
Может кто-нибудь другой способ знает, как получить информацию из журнала безопасности???
31 Demetres
 
28.05.13
11:32
Решено было некой утилитой выгружать события в файл *.csv или *.txt а файлы считывать рег. заданием