JavaScriptでレコード詳細画面のイベント処理を記述した時に、計算フィールドに計算式を表示する方法はないでしょうか?
フォームに計算フィールドを設置し、計算式を設定しています。
JavaScriptで以下のようなレコード詳細画面の処理を記述し、アプリに反映します。
kintone.events.on([‘app.record.create.show’, ‘app.record.edit.show’], function(event){
var record = event.record;
// 個別の処理
// (項目ごとにdisabledの設定など)
return event;
});
アプリを起動し、レコード詳細画面を開くと計算フィールドの計算式が表示されず、[0]が表示されます。
(計算フィールドで[計算式を表示しない]にチェックを設定していなければ、[0]でなく計算式が表示されるはず)
JavaScriptでレコード詳細画面のイベント処理を記述した時に、計算フィールドに計算式を表示する方法はないでしょうか?
コードが書いてあるとおりだとすると「レコード作成画面表示イベント」と「レコード編集画面表示イベント」時になにかやってる感じでしょうか。
それだけで計算式が表示されなくなる、というのは考えづらいので,
実際に計算フィールドとして計算に使うフィールドに 0 がはいっていて、計算結果が表示されてしまいっている、ということはありませんでしょうか?
的外れならすいません
ご返信ありがとうございます。
試しに処理を入れず、下記コードのみとして実行してみましたが、計算フィールドには[0]が表示されてしまいました。
kintone.events.on([‘app.record.create.show’, ‘app.record.edit.show’], function(event){
var record = event.record;
return event;
});
また、[return event;]をコメントアウトすると正常に計算式が表示されます。
[return event;]をすると計算式が表示されなくなるというのは仕様なのでしょうか・・
また何か気づいたことがあればアドバイスをお願い致します。
理解しました
まず、
> レコード詳細画面を開くと計算フィールドの計算式が表示されず、[0]が表示されます。
これは「レコード詳細画面(app.record.detail.show)」ではなく、実際には「レコード作成画面(app.record.create.show)」か「レコード編集画面(app.record.edit.show)」を開くと、と解釈します
> [ return event; ]をすると計算式が表示されなくなるというのは仕様なのでしょうか・・
僕もその仕様は初めて気づいたんですが,
試してもらったことを考慮すると、
おそらく、return eventで値が変わったと判断され、計算が走って0を表示しているのかもしれません。どうしようもなさそうですね。。
どうしても計算式を示したい場合は、ラベルフィールドを作って計算式を表示してあげる、などの対応が必要そうです。
アドバイスありがとうございます。
また、言葉の間違いがあり、失礼致しました。
[ return event; ]をすると、計算が走る為に0が表示されてしまうことを念頭において
お客様ともう一度相談してみます。
ありがとうございました。