Имя: Пароль:
1C
1С v8
неправильно работает метод найти в 8.2
0 AJ_81
 
10.01.12
11:40
Процедура стандартная, базу сконвертировал на 8.2 стала через раз работать т.е разбиваю данные
   ЧислоМесяца   = ВыделитьДатуНаЧасти("9 января 2012 г.", 1);
   МесяцПрописью = ВыделитьДатуНаЧасти("9 января 2012 г.", 2);
   ЧислоГод      = ВыделитьДатуНаЧасти("9 января 2012 г.", 3);
   ГодПрописью   = ВыделитьДатуНаЧасти("9 января 2012 г.", 4);

в функции выделатьДатуНаЧасти есть строка:
ПозицияПослПробела = Найти(ДАТА, " ");

Так вот, программа не видит пробел где "2012 г.", в чем может быть проблема?
1 Рэйв
 
10.01.12
11:40
это не пробел
2 Cube
 
10.01.12
11:41
Там не пробел...
3 Wobland
 
10.01.12
11:41
а Символы.НПП?
4 AJ_81
 
10.01.12
11:41
(до конвертации на 8.1 все работало)
5 guitar_player
 
10.01.12
11:45
(4) имхо если в 8.1 там был пробел, то это было не правильно. в 8.2 там не пробел
6 AJ_81
 
10.01.12
11:45
(3) что такое символы НПП?
7 guitar_player
 
10.01.12
11:45
Неразрывный пробел. Пробел, по которому не должен выполняться перенос на другую строку или другое разбиение текста при форматировании.
8 AJ_81
 
10.01.12
11:46
(я просто эту дату через формат вытаскиваю)

Формат(ВыборкаРаботники.ДатаНачала,"Л=ru_RU; ДЛФ=DD")
9 AJ_81
 
10.01.12
11:47
а вот если вытаскиваю Формат(ВыборкаРаботники.ДатаНачала,"Л=kk_KZ; ДЛФ=DD") т.е. в казахском варианте, тоже работает
10 Рэйв
 
10.01.12
11:49
Сообщить(КодСимвола(Сред(Формат(ВыборкаРаботники.ДатаНачала,"Л=ru_RU; ДЛФ=DD"),16,1)))

Сообщить(КодСимвола(" "))
11 AJ_81
 
10.01.12
12:13
Спасибо за отклик, решил следующим образом
   
   Для Н = 1 По СтрДлина(ДатаПриема) Цикл
       
       Буква = Сред(ДатаПриема, Н, 1);
       Если КодСимвола(Буква) = 160 Тогда
           ДатаПриема = СтрЗаменить(ДатаПриема, Буква, " ");
       КонецЕсли;    
   КонецЦикла;
12 Рэйв
 
10.01.12
12:21
(11)Может так проще?
ДатаПриема = СтрЗаменить(ДатаПриема, Символ(160), " ");
:-)
13 Рэйв
 
10.01.12
12:22
и без цикла все
14 Рэйв
 
10.01.12
12:22
...все заменит
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.