Я выполняю запрос на обновление таблицы исторических данных в PowerBI. Этот запрос на обновление вызывает API-интерфейс Adobe Analytics и извлекает данные на основе указанного диапазона дат.
Поскольку я хочу, чтобы это выполнялось как можно быстрее, я хотел бы только запрашивать данные, которых у меня еще нет в моей таблице исторических данных. Я в порядке установки даты окончания этого запроса на основе Date.Time.LocalNow ().
#date(Date.Year(DateTime.LocalNow()), Date.Month(DateTime.LocalNow()), Date.Day(DateTime.LocalNow())-1)
Однако, где я застрял, ставит дату начала. В идеале я хотел бы взять MaxDate из таблицы в моей модели данных и использовать это значение в редакторе запросов в качестве даты начала.
Как бы я это сделал?
ОБНОВЛЕНИЕ 1 - Полный код ниже
let
Source = AdobeAnalytics.Cubes()
myreportsuiteid = Source{[Id="myreportsuiteid"]}[Data],
#"Added Items" = Cube.Transform(myreportsuiteid,
{
{Cube.AddAndExpandDimensionColumn, "DateGranularity", {"year", "month", "day"}, {"Date Granularity.Level 1: Year", "Date Granularity.Level 2: Month", "Date Granularity.Level 3: Day"}},
{Cube.AddAndExpandDimensionColumn, "lasttouchchannel", {"lasttouchchannel"}, {"Last Touch Marketing Channel"}},
{Cube.AddMeasureColumn, "Unique Visitors", "uniquevisitors"},
{Cube.AddMeasureColumn, "Visits", "visits"},
{Cube.ApplyParameter, "DateRange", {#date(Date.Year(List.Max(Union[Date])), Date.Month(List.Max(Union[Date])), Date.Day(List.Max(Union[Date]))+1), #date(Date.Year(DateTime.LocalNow()), Date.Month(DateTime.LocalNow()), Date.Day(DateTime.LocalNow())-1)}},
{Cube.ApplyParameter, "Segment", {{"s300000554_5ae201be22fa9950dcdbcd92"}}}
})
in
#"Added Items"
ОБНОВЛЕНИЕ 2
РАБОЧИЙ КОД
Daily US - таблица, созданная с помощью редактора запросов
let
Source = AdobeAnalytics.Cubes(),
todaysDate = Date.AddDays(DateTime.Date(DateTime.LocalNow()),-1),
maxDate = Date.AddDays(List.Max(#"Daily US"[Date]),1),
myreportsuiteid = Source{[Id="myreportsuiteid "]}[Data],
КОД ОШИБКИ
Union US - это таблица, созданная вне редактора запросов с помощью Union US = DISTINCT (UNION ('Seeker US', 'Daily US')) *
let
Source = AdobeAnalytics.Cubes(),
todaysDate = Date.AddDays(DateTime.Date(DateTime.LocalNow()),-1),
maxDate = Date.AddDays(List.Max(#"Union US"[Date]),1),
myreportsuiteid = Source{[Id="myreportsuiteid "]}[Data],