Имя: Пароль:
1C
 
Как в 1С получить ANSI код символа?
0 Baiji
 
08.04.08
12:21
Как в 1С получить ANSI код символа?

Знаю что можно через VBScript:
Функция Asc(value)
 sc = Новый COMОбъект("MSScriptControl.ScriptControl");
 sc.language="VBscript";
 Возврат sc.eval("Asc("""+value+""")");
КонецФункции

Но это, почему-то работает не везде. Помогите пожалуйста.
1 е273
 
08.04.08
12:25
КодСимвола (CharCode)
Синтаксис:
КодСимвола(<Строка>, <Номер символа>)
Параметры:
<Строка> (обязательный)
Тип: Строка. Исходная строка.
<Номер символа> (необязательный)
Тип: Число. Номер символа в строке, код которого необходимо получить. Нумерация символов в строке начинается с 1.
Значение по умолчанию: 1
Возвращаемое значение:
Тип: Число. Код переданного символа. Код возвращается в соответствии с кодировкой Unicode.
Описание:
Получает код символа, расположенного в переданной строке в позиции с указанным номером.
Пример:
КодПервогоСимволаФамилии = КодСимвола(Сотрудник.Фамилия);
2 Baiji
 
08.04.08
12:26
(1) Код возвращается в соответствии с кодировкой UNICODE.

Мне нужно ANSI !!!
3 Baiji
 
08.04.08
12:55
Up.
Помогите, пожалуйста, кто-нибудь!
4 Immortal
 
08.04.08
12:57
(3) ну что ты орёшь..в (0) нормальный пример. скорее всего не у всех ест ьправа на его исполнение и всё.
5 Baiji
 
08.04.08
13:00
(4) - возможно, но компов много и они далеко, и с каждым копаться в системе не вариант...

Ошибку выкидывает (только у некоторых): Ошибка при вызове метода контекста (Eval): Произошла исключительная ситуация (Microsoft VBScript compilation error): Unterminated string constant
6 VRednaia
 
08.04.08
13:03
А Value это у тебя что?
7 Baiji
 
08.04.08
13:17
Для Сч = 1 По СтрДлина(strData) Цикл
value= Сред(strData, Сч, 1)

strData - Наименование справочника номенклатуры
8 Baiji
 
08.04.08
16:07
Разобрался.
Баг был в том что символ " попадался...

Patch:
Если ТекСимвол = """" Тогда
ANSI = 34
Иначе
ANSI = Asc(ТекСимвол)
КонецЕсли;