Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Коллеги, нужна помощь.
провайдер изменил формат отчета.
нужно преобразовать дату из текстового формата в дату.
Ковырялись в Клике (используем 11 версию) что-то не получается адекватно определить дату и время.
спасибо.
Прямого преобразования такого фармата даты в клике нет. Но несколько манипуляций и получите дату. Решение в приложении. !
Привет!
Сначала делаем меппинг месяцев а дальше преобразование:
MapMonth:
Mapping
load * inline [
TEST, NUMBER
января, 01
февраля, 02
марта, 03
апреля, 04
мая, 05
июня, 06
июля, 07
августа, 08
сентября, 09
октября, 10
ноября, 11
декабря, 12
];
и
LOAD Num(Left([Фактическое время местоположения абонента], 1), 00) & '.' & MapSubString('MapMonth', SubField([Фактическое время местоположения абонента], ' ', 2)) & '.' & SubField([Фактическое время местоположения абонента], ' ', 3) as 01
FROM 12-15-2015-108.xls (biff, embedded labels, table is Отчет$);
Добрый день, Павел!
Можно немного схитрить (если в приложении в других местах не используются полные названия месяцев в именительном падеже)
и сделать вот так:
SET LongMonthNames='января;февраля;марта;апреля;мая;июня;июля;августа;сентября;октября;ноября;декабря';
Даты:
LOAD date(date#([Фактическое время местоположения абонента],'DD MMMM YYYY г. hh:mm' )) as Тест
FROM пример.xls
(biff, embedded labels, table is Отчет$);
Прием для создания поля Тест используется при загрузке даты с форматом, не совпадающим с системным форматом, а точнее с форматом, указанном в начале скрипта в переменной DateFormat, например:
SET DateFormat='DD.MM.YYYY';
Сначала в маске функции date#() мы описываем формат даты в источнике , а затем применяем текущий формат с помощью функции date.