Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Разделение чисел на разряды в 1С
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.2 > Программирование обычных форм 1С 8.2 и не интерфейсной логики
Alaid
Всем хорошего настроения!

Господа, наткнулся на такой "пустячек".

Как в 1С 8.2 преобразовать число в строку, чтобы она (1С) туда пробелы не вставляла???
СтрЗаменить() не катит :-(
Огромную кучу времени потерял из-за этой, простите на слове, фигни, пока искал где ошибка.
Теперь обойти ее не могу.

Значе=Rs.Fields("chid").Value;
Значе=СтрЗаменить(Значе, " ", "");
Cmd2.CommandText = "select * from s_invd where chid="+Значе; // Запрос табличной части документа
Сообщить(Cmd2.CommandText);

После этого Cmd2.CommandText
выглядит как:
select * from s_invd where chid=57 273

Как это правильно обойти?

Заранее Благодарен!


Разобрался!
Ardi
СтрЗаменить(Значе, Символ(160), "");
Vofka
СтрЗаменить(Значе, Символы.НПП, "");

smile.gif
Fynjy
Формат(лСтрокаАкиЧисло, "ЧРД=.; ЧН=; ЧГ=0")
вот вам еще вариант smile.gif
Batchir
smile.gif А вот функция, если вдруг понадобится из любой строки выделить числа, например из "XZ1234W234" должно получиться "1234234"

Функция ВыделитьЧислаИзСтроки(СтрокаПреобразования)

    СтрокаЧисел = "0123456789";
    СтрокаПреобразования = СокрЛП(СтрокаПреобразования);
    ДлинаСтроки = СтрДлина(СтрокаПреобразования);
    ВыделенныеЧисла = "";
    Для Инд = 1 По ДлинаСтроки Цикл
        ТекСимвол = Сред(СтрокаПреобразования,Инд,1);
        Если Найти(СтрокаРазделителей, ТекСимвол) > 0 Тогда
            ВыделенныеЧисла = ВыделенныеЧисла + ТекСимвол;
        КонецЕсли;
    КонецЦИкла;
    Возврат ВыделенныеЧисла;

КонецФункции
Vladimir1C
Цитата(Ardi @ 11.10.11, 0:40) необходимо зарегистрироваться для просмотра ссылки
СтрЗаменить(Значе, Символ(160), "");

Извините, если не по теме...вот мимо шел и увидел.
Тоже надо было из строки "3 855.00" сделать вида "3855.00", иначе 1С 7.7 нормально не воспримет..
Делается в семерке так:
СтрЗаменить(Значе, Симв(160), "");

Иначе новички путать будут :-)
Функции Символ(...) то в семерке нету ;-)
logist
Цитата(Vladimir1C @ 16.12.11, 16:44) необходимо зарегистрироваться для просмотра ссылки
Извините, если не по теме...

Конечно не совсем по теме, тема про 8-ку.
sava1
Цитата
А вот функция, если вдруг понадобится из любой строки выделить числа, например из "XZ1234W234" должно получиться "1234234"

и от меня...

   RegExp = Новый COMОбъект("VBScript.RegExp");
   RegExp.IgnoreCase = Истина; //Игнорировать регистр
   RegExp.Global = Истина; //Поиск всех вхождений шаблона
   RegExp.MultiLine = Истина; //Многострочный режим
   RegExp.Pattern = "[^0-9]"; // отбор только чисел    
    стр=RegExp.Replace(стр, "");
    Сообщить(стр);
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.