2014-10-03 115 views
1

有谁知道我应该使用哪种DAX函数来显示另一个表中的表中的信息。PowerPivot - 按日期范围的相关数据

我在我的数据模型有2个表:

任务 - 任务ID - 任务名称 - 开始日期 - 结束日期

会计期间 - ID - 期间名称 - 开始日期 - 结束日期

我想要做的是为每个任务添加一个计算列,填充相应的会计期间ID。我正在尝试添加一个指定以下内容的过滤器或计算: - 如果任务开始日期介于财务开始日期和财务结束日期之间,则返回财务期间ID。

任何人有任何想法? 谢谢, 滚装

+1

此连结执行你是什么样的一个更灵活的方式寻找...... http://www.powerpivotpro.com/2011/11/the-ultimate-date-table/ – guitarthrower 2014-10-03 16:21:33

+0

你能上传一些样本数据吗? – 2014-10-07 22:04:05

回答

0

这可能有助于:

  1. 万一会计期间ID是一个数字:

=CALCULATE(MAX(Periods[ID]),FILTER(Periods,Periods[Start Date]<=Tasks[Start Date] && Periods[End Date]>=Tasks[Start Date]))

  • 万一财政期间ID不是数字:
  • 将开始日期计算列第一,说“期间开始日期”

    =CALCULATE(MAX(Periods[Start Date]),FILTER(Periods,Periods[Start Date]<=Tasks[Start Date] && Periods[End Date]>=Tasks[Start Date]))

    然后用LOOKUPVALUE的ID

    =LOOKUPVALUE(Periods[ID],Periods[Start Date],Tasks[Period Start Date])