Закажите бесплатный расчет стоимости вашей задачи по 1С!
Перезвоним за 10 минут!

Как преобразовать строку в дату 1С 8.3 (8.2)

Очень частая задача в программировании 1С — преобразование одного типа данных в другой. Проблема преобразования строки в дату — это произвольность написания строки. Кому-то требуется превратить строку «15.12.15» в нужное число, у кого-то значение «15 декабря 2015 года», а возможно, «15.12.2015 20:42:22».

Рассмотрим примерные варианты решения такой задачи.

Варианты преобразования даты из строки

Проще всего преобразовать строку вида «20151215204222», используя метод «Дата»:

Дата(«20151215204222»)  // 15.12.2015 20:42:22

Со строкой «15.12.2015 20:42:22» также прекрасно справляется типовой метод:

Дата(«15.12.2015 20:42:22»)  //15.12.2015 20:42:22

Второй вариант, если мы знаем отдельные составляющие даты в строковом формате: год, месяц, день и т.д:

Дата(«2015″,»12″,»15″,»20″,»42″,»22»)  // 15.12.2015 20:42:22

Пример преобразования строки вида «2015-12-15 20:42:22»:

СтроковаяДата = «2015-12-15 20:42:22»;
СтроковаяДата = СтрЗаменить(СтроковаяДата , «-«,»»);
СтроковаяДата = СтрЗаменить(СтроковаяДата , «:»,»»);
НоваяДата = Дата(СтроковаяДата ); // 15.12.2015 20:42:22

Если дата указан так «20:42:22 2015/12/15», можно преобразовать её следующим образом:

СтроковаяДата = «20:42:22 2015/12/15»;
СтроковаяДата = СтрЗаменить(СтроковаяДата , «/»,»»);
СтроковаяДата = СтрЗаменить(СтроковаяДата , «:»,»»);
НоваяДата = Дата(Прав(СтроковаяДата , 8) + Лев(СтроковаяДата ,6));

Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):

P.S. Наша компания предоставляет услуги по настройке, доработке и комплексному внедрению 1С. Закажите бесплатный расчет стоимости вашей задачи на странице Услуги 1С или по телефону +7 (499) 350 29 00.

Остались вопросы?

СПРОСИТЕ в комментариях!

Один комментарий на “Как преобразовать строку в дату 1С 8.3 (8.2)
  1. А теперь запустите этот код на компьютере, где стоит стандарт отображения даты, отличный от принятого в России.

    Ответить

Добавить комментарий: