Динамическое форматирование последнего измененного фильтра в фабрике данных DataSet - PullRequest
1 голос
/ 09 апреля 2019

Я пытаюсь динамически установить последний измененный фильтр в наборе данных фабрики данных Azure.

Я использую следующее выражение:

@ formatDateTime (adddays (utcnow (), - 2), 'yyyy-mm-ddThh: mm: ss.fffZ')

Data factory formatting

Я получаю следующую ошибку:

Ошибка копирования действия 1: произошел сбой на стороне источника.ErrorCode = UserErrorInvalidValueInPayload, 'Type = Microsoft.DataTransfer.Common.Shared.HybridDeliveryException, Message = Не удалось преобразовать значение в свойстве'ifiedDatetimeStart' в 'System.Nullable`1 [[System.DateTime, mscorlib, Version = 4.0.0.0,Культура = нейтральная, PublicKeyToken = b77a5c561934e089]] '.Убедитесь, что структура и значение полезных данных указаны правильно., Source = Microsoft.DataTransfer.DataContracts, '' Type = System.Reflection.TargetInvocationException, Message = Exception, которое было выброшено целью вызова., Source = mscorlib, ''Type = System.FormatException, Message = DateTime, представленный строкой, не поддерживается в календаре System.Globalization.GregorianCalendar., Source = mscorlib, '

Я также не могу предварительно просмотреть данныес этим фильтром.Я думаю, что-то здесь не так.Есть идеи?

Ответы [ 4 ]

1 голос
/ 09 апреля 2019

Из сообщения об ошибке я понимаю, что строковое представление даты не поддерживается каландром.

The DateTime represented by the string is not supported in calendar 

Зачем вам нужно форматировать строку для сравнения?

0 голосов
/ 14 июня 2019

получается, что вы можете решить вышеупомянутое, добавив преобразование в строку к вашей строке выше, поэтому с

@formatDateTime(adddays(utcnow(),-2),'yyyy-mm-ddThh:mm:ss.fffZ')

измените ее на

@string(formatDateTime(adddays(utcnow(),-2),'yyyy-mm-ddThh:mm:ss.fffZ'))

, это работает на моем конце

0 голосов
/ 16 апреля 2019

На самом деле следующие команды тестируются и работают после публикации и запуска:

@ utcnow ()

@ adddays (utcnow (), - 2)

ЭтоФункция предварительного просмотра в интерфейсе, которая не может работать с выражениями.Надеемся, что это будет решено Microsoft.

screenshot

0 голосов
/ 12 апреля 2019

Возможно, в качестве обходного пути вы могли бы использовать это выражение, чтобы избавиться от лишних символов в вашем выражении даты и времени:

@substring(formatDateTime(adddays(utcnow(),-2), 'o'), 0, 23)

Я проверил это с помощью utcnow (), и он должен вернуть дату и время в нужном формате:

"value": "2019-04-12T10:11:51.108Z"

...