0

我将为我们的自我活动创建一个仪表板,因此加入了两个事实表。

现在,我想使用新的列进行进一步计算,但 QlikSense 显示错误并指示找不到列“DeliveredQuantity”。

我将向您展示我的声明:

ORDERPOSITION:
LOAD
AUFK_NR&'|'&FIRM_NR as %AUFK,
(FIRM_NR&'|'&AUFK_NR&'|'&AUFP_NR) AS %AUFPdelivered,
AUFP_NR,
ART_NR as %ART_NR,
ART_NR,
(AUFP_PREIS2/AUFP_PEHFAKTOR/AUFP_PREISFAKTOR)*DeliveredQuantity AS TurnoverOrderPosition,
FROM [lib://QVD/HKTRS2_V_AUFP.qvd]
(qvd);
 
LEFT JOIN (ORDERPOSITION)
LOAD (FIRM_NR&'|'&AUFK_NR&'|'&AUFP_NR) AS %AUFPdelivered,
AUFL_MENGE AS DeliveredQuantity
FROM [lib://QVD/HKTRS2_V_AUFL.qvd]
(qvd);
4

1 回答 1

1

您必须先加入表格。一旦表被连接并且所有字段都在同一个表中,那么该字段可以用于执行计算

像这样的东西:

// First step is to join both tables
// Prepare the calculated field TurnoverOrderPosition_Temp
ORDERPOSITION_Temp:
Load
    AUFK_NR & '|' & FIRM_NR as %AUFK,
    FIRM_NR & '|' & AUFK_NR & '|' & AUFP_NR AS %AUFPdelivered,
    AUFP_NR,
    ART_NR as %ART_NR,
    ART_NR,
    AUFP_PREIS2 / AUFP_PEHFAKTOR / AUFP_PREISFAKTOR AS TurnoverOrderPosition_Temp,
From 
    [lib://QVD/HKTRS2_V_AUFP.qvd]
    (qvd)
;
 
Left Join (ORDERPOSITION)
Load
    FIRM_NR & '|' & AUFK_NR & '|' & AUFP_NR AS %AUFPdelivered,
    AUFL_MENGE AS DeliveredQuantity
From 
    [lib://QVD/HKTRS2_V_AUFL.qvd]
    (qvd)
;

// Once the tables are joined then we can
// create the final calculation
ORDERPOSITION:
Load 
    *,
    TurnoverOrderPosition_Temp * DeliveredQuantity as TurnoverOrderPosition
Resident
    ORDERPOSITION_Temp
;

// we dont need this table anymore
Drop Table ORDERPOSITION_Temp;
// we dont need this field anymore
Drop Field TurnoverOrderPosition_Temp From ORDERPOSITION;
于 2021-10-19T04:11:35.370 回答