該当する場合に結果を合計するカスタム式を実装しています(つまり、結果が複数ある場合です)。式エディターでは式のテストに成功しますが、ポップアップには最初の結果しか表示されず、複数の結果の合計が取得されません。次の式は、式エディターで[テスト]をクリックすると 24 になりますが、ポップアップには(この場合)3 つある結果のうち最初の値、つまり 8 だけが表示されます(値がそれぞれ 8 の結果が 3 つあります)。コード、テスト結果のスクリーンショット、続いてマップ上のポップアップを示します(該当する属性は最後の行の「Applications の合計 kW」です)。
var fc = FeatureSetById($map, /* 電力会社の承認済み申請 */ "DG_Transformer_Availability_Popup_test_2658")
var code = $feature["PARENT_ID"]
//var pizza = 26712474;
var sql = "TRANSFORMER_ID = " + code;
//var sql = "TRANSFORMER_ID = " + pizza;
//var sql = "TRANSFORMER_ID = 12157630"
Console(sql);
var applications = Filter(fc, sql);
var cnt = Count(applications);
Console(cnt);
var getAppKW;
var sumAppKW = 0;
if(cnt > 0){
Console(cnt);
for (var application in applications){
sumAppKW += application.APPLICATION_KW_AC
}
getAppKW = sumAppKW
}else{
getAppKW = "N/A"
}
if (IsEmpty(getAppKW) || (getAppKW == NULL)){
getAppKW = "データなし"
}
Console(getAppKW);
return getAppKW


ポップアップの構成(カスタム属性の表示)の行は「Applications の合計 kW: {expression/expr5}」です。expr5 は上記の式です。これは Portal for ArcGIS 10.7.1 で使用しています。ポップアップがループの完了を待っていないのでしょうか。それとも、コードにエラーや問題があるのでしょうか。
ありがとうございます。
Jim Faron
Unisource Energy