您好 Power Query (M) 和 Power BI 大师!
我正在尝试使用 Power BI Desktop 中的 3 个列表作为我的参数,以使用 AdobeAnalytics 连接器 (API) 创建表(有关生成的 Power Query 代码,请参见下文)。AdobeAnalytics 连接器仅允许使用堆叠在一起的分段(对于那些不熟悉 AdobeAnalytics 的人,可以将分段视为过滤器)。所以我唯一的选择(到目前为止我看到的)是遍历 3 个列表的所有可能组合以生成所有调用(即尝试使用嵌套循环为我创建所有这些表,然后将它们组合到一个表中)。
数据组件:
3 个值列表,用作每次调用的嵌套参数
程序(1 列)
- 一个
- 乙
- C
区域(1 列)
- A1
- B2
- C3
营销渠道(1 列)
- A11
- B22
- C33
Power BI Desktop - Power Query AdobeAnalytics API 连接
所需步骤
1.为 3 个列表中的每个值组合创建一个表,例如:
- 表 1将使用以下参数:
- (#Programs[A]、#Regions[A1]、#MarketingChannels[A11])
- 表 2将使用以下参数:
- (#Programs[A]、#Regions[A1]、#MarketingChannels[B22])
- 继续,直到完成所有可能的组合
2.创建完所有表后,我需要将它们组合起来
下面的代码片段将是表 1 的示例,(注意以“{Cube.ApplyParameter, “Segment””开头的行,因为上面的列表将用作参数)
任何和所有的帮助将不胜感激!!!
let
Source = AdobeAnalytics.Cubes(),
invitrogenprod = Source{[Id="invitrogenprod"]}[Data],
#"Added Items" = Cube.Transform(invitrogenprod,
{
{Cube.ApplyParameter, "DateRange", {#date(2018, 3, 21), #date(2018, 3, 21)}},
{Cube.ApplyParameter, "Segment", {{"#Programs[A]", "#Regions[A1]", "#MarketingChannels[A11]"}}},
{Cube.AddAndExpandDimensionColumn, "DateGranularity", {"year", "month", "day"}, {"Date Granularity.Level 1: Year", "Date Granularity.Level 2: Month", "Date Granularity.Level 3: Day"}},
{Cube.AddMeasureColumn, "Engaged Visits", "cm300001617_5a84e003de3c977de97c39d2"},
{Cube.AddMeasureColumn, "Engaged Visits (PDP)", "cm300001617_5a58160e8f0c657d68a6e404"},
{Cube.AddMeasureColumn, "Visits w/ Cart Activity", "cm300001617_5a50160c4ecbca5712928ab6"}
})
in
#"Added Items"