LotusNotesな日々IBM社のLotusNotesに関係する何かを日々語ってるようなきがしないでもないブログです。 

スポンサーサイト

   ↑  --/--/-- (--)  カテゴリー: スポンサー広告
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

(記事編集) http://mesosune.blog123.fc2.com/?overture" target="_new

--/--/-- | Comment (-) | HOME | ↑ ページ先頭へ |

LotusScriptで期間を計算するときに出現するエラーに対応する

   ↑  2008/10/12 (日)  カテゴリー: Notes(LotusScript)
期間の計算がしたくてNotesDateTimeクラスのTimeDifferenceを使用することもあるとおもいます。
その時にやりがちなエラーについて。
二つの日付の間に何日あいているかを計算したい場合、

TimeA.TimeDifference( TimeB ) / ( 60 * 60 * 24 )

と書くとバッファーエラーになります。

これは、一日の秒数を出すのにJavaScriptのクッキー処理でもよく使用する書き方である
60 * 60 * 24
とやってしまうと必ずバッファーエラーになるという"仕様"のようです(笑)
意外なことに、60 * 60 * 24 の計算結果 86400 で割るとそれは発生しません。

TimeA.TimeDifference( TimeB ) / 86400

60 * 60 * 24がInteger型で間違って処理されるためのようです。
(Integerの上限値は32767)

割り切れず、小数点がある値はLong型でもないので注意してください。
整数だけが必要な場合はFix関数を使用してください。
スポンサーサイト

(記事編集) http://mesosune.blog123.fc2.com/blog-entry-151.html

2008/10/12 | Comment (0) | Trackback (0) | HOME | ↑ ページ先頭へ |

Comment

コメントを投稿する 記事: LotusScriptで期間を計算するときに出現するエラーに対応する

お気軽にコメントをぞうぞ。
非公開 (管理人のみ閲覧可能なコメント) にしたい場合には、ロック にチェックを入れてください。

  任意 : 後から修正や削除ができます。
  非公開コメントとして投稿する。(管理人にのみ公開)
 

Trackback

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。