iOS版アプリの計算式クラスターで日を跨ぐ時刻計算を行うと計算結果が負数(マイナス)になってしまう
計算式クラスターで時刻クラスターを使用し整数で時刻を算出している環境下において、
iOS版i-Reporterアプリで日を跨ぐ時刻計算を行うと計算結果が負数になる事象が発生します。
これは、Windows版i-Reporterアプリでは計算式クラスターで日を跨ぐ時刻計算を行っても、日を跨ぐことを考慮した計算結果が表示される(※後述の注意事項参照)のに対して、iOS版i-Reporterアプリでは日を跨ぐことを考慮した計算結果が表示されない為です。
この事象につきましては、下記の例のように計算結果が負数になることを考慮した計算式にしてください。
【例】
・開始時刻(時刻クラスター):23:30
・終了時刻(時刻クラスター):00:15
上記に対して計算式クラスターで以下の計算式のように「終了時刻 - 開始時刻」の計算処理を行うと、Windows版i-Reporterアプリでは「45」の結果となるのに対して、
iOS版i-Reporterアプリでは「-1395」の結果になってしまいます。
<修正前>
=(終了時刻 - 開始時刻)*24*60
上記の対処として、下記の計算式のように日を跨いでいた場合に1(シリアル値で24時間)を加算する処理を追加する等をご検討ください。
<修正後>
=(終了時刻 - 開始時刻 + IF(終了時刻 < 開始時刻,1,0))*24*60
※ 注意事項
Windows版i-Reporterアプリはデフォルトでは日を跨ぐ時刻計算がされたときに自動的に負数にならないように調整される機能があります。
これはConMas Designerの計算式クラスターの入力パラメータ設定にある「Windows版での日跨ぎの時刻減算」にチェックが入っている為です。
同チェックを入れているとiOS版i-ReporterアプリとWindows版i-Reporterアプリで計算結果が異なる事象が発生する可能性が考えられます。
もし運用上でiOS版i-ReporterアプリとWindows版i-Reporterアプリを併用する場合は、同チェックを外してご利用ください。