如何使用Power Bi

时间:2019-03-26 01:30:31

标签: ms-office powerbi powerbi-desktop power-bi-report-server powerbi-custom-visuals

我想在power bi中显示给定月份的活动租金详细信息。我有一张桌子,上面有租金明细。在该表中,我有开始日期,结束日期以及多少个月。因此,当我在Power Bi视觉效果中选择一个月时,我想显示使用Power Bi视觉当前活跃的租金

示例

房屋A 1.1.2019 31.12.2019 12 B室1.2.2019 31.05.2019 03 C室1.4.2019 31.12.2019 08

如果我选择6月的结果应为房屋A和C,如果选择游行的结果应为全部三个(A,B,C)

有人可以帮助我吗?

请在这里找到我的解决方案-(https://app.powerbi.com/groups/me/reports/b12bf4b6-14f1-41e1-9bf9-832509dce3e9?ctid=8ac0e5ca-0835-4daf-af23-c940683adbef

enter image description here

我使用上述解决方案获取表格。我需要将subscription_id与其他表进行匹配并获取数据,但目前不允许。任何解决方案

1 个答案:

答案 0 :(得分:0)

让我们假设您将数据存储在一个名为“租金”的表中

“租金”表包含以下信息(但不限于):

[位置] | [Rent_Start] | [Rent_End]

第一步:

创建日历表:

       3
   1       2

将两个计算出的列添加到您的日历表中[月份名称]和[月份编号]

步骤2: 将租用表与日历与新表交叉连接,添加一个标志列,指示该位置是否在使用中。在不使用位置信息时过滤行,然后选择您实际需要的列:

SELECTCOLUMNS(
    GENERATESERIES(
        MIN(Rentals[Rent_Start]);
        MAX(Rentals[Rent_End])
    );
    "Date"; [Value]
)

第3步:在Calendar [Date]和RunningTime [Date]列之间创建1:*关系。现在,您可以使用月份名称从日历中创建切片器,并在带有RunningTime [Location]的可视表中,选择某些月份时看不到正在使用的位置。

(需要按月号对[Month Name]进行“正确”排序,而不是按字母顺序排序)

编辑1: 让我们看看,据我所知,我的代码满足了您的需求。如果以下说明对您不起作用,请通过上传模型(或示例)与我联系。另外,不确定使用中的房屋和总入住人数之间的区别是什么意思。

据我从您的图像和文字中可以看出,我的[Rent_Start]和[Rent_End]对应于您的[start_date]和[end_date]列,均为日期时间格式。所以我看不出问题是什么?

如果您只想知道正在使用多少座房屋,则需要采取以下措施:

RunningTime = 
SELECTCOLUMNS(
    FILTER(
        ADDCOLUMNS(
            CROSSJOIN(Rentals; Calendar);
            "In_Use";
            IF([Date] >= [Rent_Start] && [Date] <= [Rent_End]; 1; blank() )
        );
        [In_Use] = 1
    );
    "Location"; [Location];
    "Start"; [Rent_Start];
    "End"; [Rent_End];
    "Date"; [Date]
)

我的解决方案中需要这三列,尽管您可以拥有更多列。 Columns I use in the data table

然后,我得到一个新表,如下所示: Expanded table

此新表通过以下方式链接到日历: Relationship between Calendar and RunningTime

然后在可视表中,我使用“ RunningTime”表中的[Location],[Start]和[End]列。然后根据我的日历表中的Month_Name创建一个切片器,如下所示(注意:此图片中没有选择月份):

Basic visual setup

如果我现在选择一月,我将得到以下信息:

January selected

如果选择3月,则会得到以下信息:

March selected