用于检查 DOG 是否在边界框中的 Power Query 公式

PowerQuery formula to check if COG is in bouding Box

我正在尝试定义对象的齿轮在哪个框中。例如,我有一个带有 COG (1.2, 1.5, 0.3) (x, y, z) 的项目和一个框列表:

盒子数量 Z低 Z高 Y 左 Y对 X锋 X 向后
1 0 3 -5 0 5 0
2 0 3 0 5 5 0

在此示例中,商品位于方框 2 中。 我现在的解决方案是使用 Sumifs,如果 COG 是 lower/higher,则检查每个边界,然后检查边界的值,因为没有框的重叠。

大部分数据都是用powerquery加载的,但是我不能让这个sumifs语句在powerquery中工作,我必须将数据加载到excel并添加sumifs语句,如果我想这样做是行不通的在 Power BI 中加载它。否则我必须打开 excel,在那里刷新并让计算 运行,保存,打开 PBI 并在那里刷新。

是否可以选择使用 sumifs 或仅使用 Power BI 的其他解决方案来创建此语句?

直接比较x,y,z参数,输出通过测试的箱号列表即可。

例如:(作为函数)

(x as number, y as number, z as number) =>
let
    Box = Table.FromRecords({
        [Box Number=1, Z Low=0, Z High=3,Y Left=-5,Y Right=0,X Front=5,X Aft=0],
        [Box Number=2,Z Low = 0, Z High=3, Y Left=0, Y Right=5,X Front=5,X Aft=0]
    }),

    typeIt = Table.TransformColumnTypes(
            Box, List.Transform(Table.ColumnNames(Box), each {_,Int64.Type})
    ),
    inOut = Table.AddColumn(typeIt,"ckBox", each 
        x >= [X Aft] and x<= [X Front] and 
        y >= [Y Left] and y <= [Y Right] and 
        z >= [Z Low] and z <= [Z High]
    ),
    boxNum = Table.SelectRows(inOut,each [ckBox] = true)
in 
    boxNum[Box Number]