Преобразование строки в дату
Разработка - Механизмы платформы 1С
Файлы
ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний
Оформите подписку на компанию для решения рабочих задач
Оформить подписку и скачать решение со скидкойВы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
Столкнулся с проблемой, есть печатная форма документа сохраненного в Excel, как обычно даты идут в формате Формат(дДата,"ДЛФ=ДД"), 1С не имеет штатных преобразователей из такой строки в дату, типовые тоже мне не помогли (возможно плохо искал), принято было решение написать очень быстро что-то рабочее, хорошо или плохо судить вам, но меня спасло, за 10 минут было написано следующее:
Функция ПолучитьИзСтрокиМесяцаНомер(Месяц) сМесяцев = Новый СписокЗначений; сМесяцев.Добавить("січня","01"); сМесяцев.Добавить("лютого","02"); сМесяцев.Добавить("березня","03"); сМесяцев.Добавить("квітня","04"); сМесяцев.Добавить("травня","05"); сМесяцев.Добавить("червня","06"); сМесяцев.Добавить("липня","07"); сМесяцев.Добавить("серпня","08"); сМесяцев.Добавить("вересня","09"); сМесяцев.Добавить("жовтня","10"); сМесяцев.Добавить("листопада","11"); сМесяцев.Добавить("грудня","12"); сМесяцев.Добавить("января","01"); сМесяцев.Добавить("февраля","02"); сМесяцев.Добавить("марта","03"); сМесяцев.Добавить("апреля","04"); сМесяцев.Добавить("мая","05"); сМесяцев.Добавить("июня","06"); сМесяцев.Добавить("июля","07"); сМесяцев.Добавить("август","08"); сМесяцев.Добавить("сентября","09"); сМесяцев.Добавить("октября","10"); сМесяцев.Добавить("ноября","11"); сМесяцев.Добавить("декабря","12"); НомерМесяца = сМесяцев.НайтиПоЗначению(нрег(Месяц)); Возврат (НомерМесяца); КонецФункции
Функция ПолучитьДатуИзСтроки(СтрокаДата) Экспорт ДлинаДень = СтрДлина(Число(Лев(СтрокаДата, 2))); День = ?(ДлинаДень=1,"0"+Число(Лев(СтрокаДата, 2)),Число(Лев(СтрокаДата, 2))); ДлинаМесяц = СтрДлина(СтрокаДата)-(ДлинаДень+1)-7; Месяц = Сред(СтрокаДата,ДлинаДень+2,ДлинаМесяц-1); н = ПолучитьИзСтрокиМесяцаНомер(Месяц); Возврат Дата(Лев(Прав(СтрокаДата,7), 4)+н+День); КонецФункции
Позже я обнаружил, что есть еще варианты, но посложней //infostart.ru/public/70017/ хотя и многофункциональней
Если кому-нибудь понадобится был рад помочь
Прилагаю тест обработки
Вступайте в нашу телеграмм-группу Инфостарт