|
v7: Как выполнить JavaScript скрипт в 1с 7.7 через какой объект? |
☑ |
0
sysadminlk
15.08.13
✎
15:36
|
Как выполнить JavaScript скрипт в 1с 7.7 через какой объект?
|
|
1
ДенисЧ
15.08.13
✎
15:36
|
WScript?
|
|
2
Odavid
15.08.13
✎
15:38
|
А что, 7.7 уж поддерживает VBS или WHS?
|
|
3
ДенисЧ
15.08.13
✎
15:38
|
(2) Ага.
|
|
4
Ёпрст
гуру
15.08.13
✎
15:38
|
(2) с рождения
|
|
5
Попытка1С
15.08.13
✎
15:39
|
(2) С добрым утром..
|
|
6
Масянька
15.08.13
✎
15:40
|
(2) Клюшки - это сборная СССР по хоккею, когда в ней были Харламов, Васильев, Мальцев и другие.
|
|
7
ADirks
15.08.13
✎
16:54
|
(0) например:
нПозиция = 1;
Если Имя = "ReadOnly" Тогда
нПозиция = 1;
ИначеЕсли Имя = "Hidden" Тогда
нПозиция = 2;
ИначеЕсли Имя = "Sys" Тогда
нПозиция = 4;
ИначеЕсли Имя = "Archive" Тогда
нПозиция = 32;
КонецЕсли;
Скрипт = СоздатьОбъект("MSScriptControl.ScriptControl");
Скрипт.Language = "JScript";
Стр = "
|function SetAttrib(fname, bit, attr_val)
|{
| var fso = new ActiveXObject(""Scripting.FileSystemObject"");
| var f = fso.GetFile(fname);
| if( (f.Attributes & bit) && (attr_val == 0) )
| {
| f.Attributes -= bit;
| }
| else if( !(f.Attributes & bit) && (attr_val == 1) )
| {
| f.Attributes += bit;
| }
|}
|";
Скрипт.AddCode(стр);
Код = Скрипт.Run("SetAttrib", СокрЛП(ИмяФайла), нПозиция, Значение);
|
|
8
sysadminlk
21.08.13
✎
19:51
|
Спасибо.
|
|
9
Ковычки
21.08.13
✎
20:12
|
//*******************************************
Процедура Сформировать()
// Вставить содержимое обработчика.
//ВызватьИсключение("Запрос.Выполнить().Выгрузить()[0].СуммаДолга");
Перем Файл,Каталог;
ХТМЛ = СоздатьОбъект("htmlfile");
ХТМЛ.Open("text/html");
//<-- Подготовим нужные методы
ХТМЛ.Write("<script>
|Новый=function(x,y){return new x(y)}
|ПолучитьХеш=function(x,y,z){x.Write(y.ComputeHash_2(z.Read(-1)))}
|</script>");
Док=ХТМЛ.documentElement.document;
// Все подготовке -->
Это=Док.script;
Методы = СоздатьОбъект("СписокЗначений");
Методы.ДобавитьЗначение("MD5");
Методы.ДобавитьЗначение("SHA1");
Фильтр="";
Для Сч=1 По Методы.РазмерСписка() Цикл
Фильтр=Фильтр+"Файлы ("+Методы.ПолучитьЗначение(Сч)+")|*|";
КонецЦикла;
Если ФС.ВыбратьФайл(0,Файл,Каталог,,Фильтр)=0 Тогда
Возврат;
КонецЕсли;
Стрим=СоздатьОбъект("ADODB.Stream");
Стрим.Type=1;
Стрим.Open();
СтримОтвет=СоздатьОбъект("ADODB.Stream");
Стрим.LoadFromFile(Каталог+Файл);
Числа=Это.Новый(Это.Number,0);
Для Х=1 По Методы.РазмерСписка() Цикл
СтримОтвет.Type=1;
СтримОтвет.Open();
Метод=Методы.ПолучитьЗначение(Х);
Енкрипт = СоздатьОбъект("System.Security.Cryptography."+Метод+"CryptoServiceProvider");
Стрим.position=0;
Это.ПолучитьХеш(СтримОтвет,Енкрипт,Стрим);
СтримОтвет.position=0;
СтримОтвет.Type=2;
СтримОтвет.CharSet="windows-1251";
Хеш="";
Пока СтримОтвет.EOS=0 Цикл
Хеш = Хеш + Это.Новый(Это.Number,КодСимв(СтримОтвет.ReadText(1))).toString(16) + " ";
КонецЦикла;
Сообщить("Файл = " + Каталог+Файл + "; Метод = " + Метод + "; Хеш = " + Хеш);
СтримОтвет.Close();
КонецЦикла;
Стрим.Close();
КонецПроцедуры
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший