Takenoff Labs » Notes/Domino » Lotus Script » Join を数値フィールドに対して使用するとエラーになる場合がある

[Notes/Domino] Join を数値フィールドに対して使用するとエラーになる場合がある

前回は Split の問題点を記載しましたが、Join にも問題があります。まぁこちらは仕様どおりの動作ではあるのですが、ちょっと解りづらいというか不親切というか。

問題が発生するのは、以下の条件をすべて満たす場合です。

  • 数値フィールドから取得した値に対して使用した場合
  • 取得した値が複数値でない場合
  • Get系のメソッドで取得した文書から取得した値の場合(DocumentContextではどうも発生しないっぽい)

上記のケースでは、配列の要素が Double 型となってしまいます(複数値の場合は Variant になります)。Join は Variant か String の配列しか処理できないため、エラーとなるわけです。なんて解りづらい…… 😥

解決策としては、Join は使用しないで、自前関数を作るしかないかもしれません(解決策になってませんが、Variant か String しか扱えないというのも不便ですし、作ってしまったほうがよいかも)。フィールド値を一律で処理しているようなスクリプトで Join を使ってしまうと、潜在的なバグになってしまう可能性があるため、くれぐれもご注意を。

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading...

トラックバックURL :

Navigation

前の記事(カテゴリ内):

次の記事(カテゴリ内):

前の記事(日付順):

次の記事(日付順):

トラックバック

トラックバックはありません

コメント

コメントはありません

※コメントは承認制となっております。管理者が承認するまで表示されません。申し訳ありませんが、投稿が表示されるまでしばらくお待ちください。





(以下のタグが使えます)
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

For spam filtering purposes, please copy the number 4528 to the field below: