Как я могу изменить формат даты и времени из значения Excel? - PullRequest
0 голосов
/ 10 января 2020

В MS Flow ( Power Automate ) я пытаюсь преобразовать даты и время из файла Excel , загруженного в Sharepoint .
In файл Excel, даты и время читаются 31/12/2019 15:00:00. В Sharepoint он читает 43830.625.
Поэтому я пытаюсь преобразовать формат даты наоборот.
Я читал много постов в Интернете, но они в основном говорят о датах, а не о датах и раз. Я успешно разбил значение, чтобы получить дату, но времена не так точны, как они отображаются на листе Excel.

Я пытался следовать и адаптировать свой код из этого поста: https://powerusers.microsoft.com/t5/Building-Flows/Convert-Excel-date-value/m-p/338380/highlight/true#M36868
Вот код, который я установил:

body('Populate_list')?['PlannedStart']) = 43830.625

Set var PlannedStartDate:  
formatDateTime(adddays('12-30-1899',int(split(string(body('Populate_list')?['PlannedStart']),'.')[0]),'yyyy-MM-dd'),'dd/MM/yyyy')

Compose_PlannedStart:
mul(float(concat('0.',split(string(body('Populate_list')?['PlannedStart']),'.')[1])),24)

Set var PlannedStartHour
split(string(outputs('Compose_PlannedStart')),'.')[0]

Set var PlannedStartMinutes
int(first(split(string(mul(float(concat('0.',split(string(outputs('Compose_PlannedStart')),'.')[1])),60)),'.')))

Потоки запускаются до тех пор, пока Set var PlannedStartMinutes не выдаст ошибку:

InvalidTemplate . Невозможно обработать выражения языка шаблонов в действии 'Set_variable_PlannedEnd_min', вводимых в строке '1' и столбце '2775': 'Выражение языка шаблонов' int (first (split (string (mul (float (concat ('0.'), Split ( string (output ('Compose_PlannedEnd')), '.') [1])), 60)), '.'))) 'нельзя оценить, поскольку индекс массива' 1 'находится за пределами (0, 0) массива. , Пожалуйста, смотрите https://aka.ms/logicexpressions для деталей об использовании. '.

Я думаю, что массив [1] пуст, но я не могу понять, почему ...

Я могу предоставить скриншоты моего потока в случае необходимости.

Большое спасибо за любую помощь.

...