1С-Предприятие 8.0. Практическое пособие разработчика



         

Общие вопросы


Я указываю период (дату начала, дату окончания), но последний день в него не попадает. Почему?

Дело в том, что в версии 8.0 значения типа Дата включают в себя время с точностью до секунд. По умолчанию, если время в явном виде не задается, оно устанавливается равным 00:00:00. Поэтому, если нужно указать период по какую-то дату включительно, следует указывать конец суток, т.е. определенную дату со временем 23:59:59, либо использовать функцию КонецДня(), если время в явном виде не задается.

В качестве примера можно посмотреть процедуру "ДействияФормыРейтингУслугСформировать" в модуле формы отчета "РейтингУслуг" в разделе "Отчет Рейтинг услуг" на странице 173.

Преобразую число из 4 цифр в строку и получаю количество символов в строке – 5. Это почему так?

Дело в том, что в версии 8.0 получение строкового представления числа выполняется на основе региональных настроек, установленных на компьютере.

В случае, когда установлены стандартные региональные настройки для России, при приведении числа к строке между группами разрядов чисел вставляется неразрывный пробел (Символы.НПП), например:

Год = 2004;

СтроковоеПредставление = Строка(Год);

// СтроковоеПредставление = "2 004"

// длина строки - 5 символов, включая неразрывный пробел [635]

Чтобы преобразовать число к строке без вставки символа-разделителя групп (неразрывного пробела), нужно использовать функцию Формат() с параметром "ЧГ" равным нулю:

Год = 2004;

СтроковоеПредставление = Формат(Год,"ЧГ = 0");

// СтроковоеПредставление = "2004"

// длина строки - 4 символа

Чтобы изменить преобразование чисел к строке по умолчанию, нужно для информационной базы установить региональные настройки (например, параметр "Группировка" установить в ноль). Для этого следует воспользоваться командой меню Администрирование

Региональные настройки ИБ ...

Если стоит задача получения строкового представления текущего года, можно воспользоваться встроенной функцией формат, указав в ее параметре соответствующую форматную строку:




Содержание  Назад  Вперед