Архивы: строка

Как преобразовать число в строку в языке запросов 1С

Ранее я уже встречался с проблемой перевода даты в строку в языке запросов 1С. Сегодня при написании запроса в 1C столкнулся с проблемой выражения числа как строки. На просторах сети Интернет я нашел следующее решение, которое сохраню здесь (думаю, что тоже не раз пригодится мне в будущем):

ПОДСТРОКА("0123456789", 1 + (ВЫРАЗИТЬ(Объект.Число / 100 - 0.5 КАК ЧИСЛО(14, 0))) - (ВЫРАЗИТЬ(Объект.Число / 1000 - 0.5 КАК ЧИСЛО(14, 0))) * 10, 1)
+ ПОДСТРОКА("0123456789", 1 + (ВЫРАЗИТЬ(Объект.Число / 10 - 0.5 КАК ЧИСЛО(14, 0))) - (ВЫРАЗИТЬ(Объект.Число / 100 - 0.5 КАК ЧИСЛО(14, 0))) * 10, 1)
+ ПОДСТРОКА("0123456789", 1 + Объект.Число - (ВЫРАЗИТЬ(Объект.Число / 10 - 0.5 КАК ЧИСЛО(14, 0))) * 10, 1)
+ "."
+ ПОДСТРОКА("0123456789", 1 + (ВЫРАЗИТЬ(Объект.Число / 0.1 - 0.5 КАК ЧИСЛО(14, 0))) - (ВЫРАЗИТЬ(Объект.Число / 1 - 0.5 КАК ЧИСЛО(14, 0))) * 10, 1)
+ ПОДСТРОКА("0123456789", 1 + (ВЫРАЗИТЬ(Объект.Число / 0.01 - 0.5 КАК ЧИСЛО(14, 0))) - (ВЫРАЗИТЬ(Объект.Число / 0.1 - 0.5 КАК ЧИСЛО(14, 0))) * 10, 1)
+ ПОДСТРОКА("0123456789", 1 + (ВЫРАЗИТЬ(Объект.Число / 0.001 - 0.5 КАК ЧИСЛО(14, 0))) - (ВЫРАЗИТЬ(Объект.Число / 0.01 - 0.5 КАК ЧИСЛО(14, 0))) * 10, 1)
+ ПОДСТРОКА("0123456789", 1 + (ВЫРАЗИТЬ(Объект.Число / 0.0001 - 0.5 КАК ЧИСЛО(14, 0))) - (ВЫРАЗИТЬ(Объект.Число / 0.001 - 0.5 КАК ЧИСЛО(14, 0))) * 10, 1)
+ ПОДСТРОКА("0123456789", 1 + (ВЫРАЗИТЬ(Объект.Число / 0.00001 - 0.5 КАК ЧИСЛО(14, 0))) - (ВЫРАЗИТЬ(Объект.Число / 0.0001 - 0.5 КАК ЧИСЛО(14, 0))) * 10, 1)
+ ПОДСТРОКА("0123456789", 1 + (ВЫРАЗИТЬ(Объект.Число / 0.000001 - 0.5 КАК ЧИСЛО(14, 0))) - (ВЫРАЗИТЬ(Объект.Число / 0.00001 - 0.5 КАК ЧИСЛО(14, 0))) * 10, 1)

Как выразить дату как строку в языке запросов 1C

Сегодня при написании запроса в 1C столкнулся с проблемой выражения даты как строки. Операции «Выразить как строка» и «Представление» не работали, сообщая о несовместимости типов данных. Но на просторах сети Интернет я нашел следующее решение, которое сохраняю здесь (думаю, что не раз пригодится мне в будущем):
ПОДСТРОКА("0123456789", ДЕНЬ(&Дата) / 10 + 1, 1)
+ ПОДСТРОКА("0123456789", СЕКУНДА(ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(1, 1, 1), СЕКУНДА, 6 * ДЕНЬ(&Дата))) / 6 + 1, 1)
+ "."
+ ПОДСТРОКА("0123456789", МЕСЯЦ(&Дата) / 10 + 1, 1)
+ ПОДСТРОКА("0123456789", СЕКУНДА(ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(1, 1, 1), СЕКУНДА, 6 * МЕСЯЦ(&Дата))) / 6 + 1, 1)
+ "."
+ ПОДСТРОКА("0123456789", ГОД(&Дата) / 1000 + 1, 1)
+ ПОДСТРОКА("0123456789", СЕКУНДА(ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(1, 1, 1), СЕКУНДА, ГОД(&Дата) * 0.06)) / 6 + 1, 1)
+ ПОДСТРОКА("0123456789", СЕКУНДА(ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(1, 1, 1), СЕКУНДА, ГОД(&Дата) * 0.6)) / 6 + 1, 1)
+ ПОДСТРОКА("0123456789", СЕКУНДА(ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(1, 1, 1), СЕКУНДА, ГОД(&Дата) * 6)) / 6 + 1, 1)