關閉數據表時無法識別名稱你好,
我在關閉數據表時遇到問題。
我把我的代碼放在下面:
f_UI:details_top5_nok = Function({rank, ictFct, tab_top5, box, dt, date1, date2},
file_name = tab_top5[rank];
dt << Select Where (:Result == "NOK" & :ICT_FCT == ictFct & :Nom de fichier == file_name & Num(date1) <= Num(Char(:Date)) <= Num(date2));
dtSub = dt << Subset (
Selected Rows(1),
columns(:Date, :Nom de fichier, :Ref Produit, :Baie, :ICT_FCT, :Result, :Reason Error, :CodeError)
);
dtSum = dtSub << Summary(
Group(:Code Error, :Reason Error),
output table name("Détails "||file_name)
);
dtSum << On Close(
Close(dtSub, NoSave);
)
);當我調用這個函數時,一切都按預期進行(子集和摘要),直到關閉的最後一個塊。 我想要的行為是,當我關閉 dtSum 時,dtSub 會自動退出。 但是,當我關閉 dtSum 時,出現以下錯誤:
未解析的名稱:dtSub 訪問或評估“dtSub”時,dtSub / * ### * /
我不明白為什麼會出現此錯誤,因為當我嘗試關閉 dtSum 時,對應於 dtSub 的表仍然打開...
預先感謝您的回答!
腳本編寫回复:Nom non reconnu à la fermeture d'une table de données我能夠複製這個問題,但我沒有解決辦法。希望另一個社區成員這樣做。
回复:Nom non reconnu à la fermeture d'une table de données當表引用不再在範圍內時,我看到了類似的錯誤。 我的解決方案如下,
example = Function( {dt},
{dtSub, dtSum},
dt << select where( :height > 61 );
dtSub = dt << subset( Selected( rows( 1 ) ) );
dtSum = dt << summary( group( :age ) );
Eval(
Substitute(
Expr(
dtSum << OnClose( Close( Data Table( table_name ), no save ) )
),
Expr( table_name ), dtSub << get name
)
);
);
example( Data Table( "big class" ) );回复:關閉數據表時無法識別名稱感謝這個對我有用的解決方案! 這次我遇到了類似的問題,我想在關閉數據表時刪除一個大綱框。 不幸的是,我遇到了與之前問題相同的錯誤。 你知道如何解決它嗎?
回复:Nom non reconnu à la fermeture d'une table de données這個想法是以不依賴變量引用的方式引用輪廓框。 這是一個您希望可以適應您的腳本的示例,
example = Function( {dt},
{dtSub, dist},
dt << select where( :height > 61 );
dtSub = dt << subset( Selected( rows( 1 ) ) );
dist = dtSub << Distribution( Continuous Distribution( Column( :weight ) ), Nominal Distribution( Column( :age ) ) );
Eval(
Substitute(
Expr(
dt << OnClose( Report( distribution[1] )[Outline Box( 3 )] << Visibility( "Collapse" ) )
),
Expr( table_name ), dtSub << get name
)
);
);
example( Data Table( "big class" ) );
我還建議折疊大綱框而不是實際刪除它。
回复:關閉數據表時無法識別名稱非常感謝您提供此信息,我將嘗試找到我的大綱框以盡可能關閉它們!