ExcelファイルからVoltアプリケーションを作成するときの注意事項1

皆さん、こんにちは。

今日もDomino Voltについての話題です。
Excelファイルを読み込んでVoltアプリケーションが作成できるのはすでにご存じでしょう。
では、どんなExcelファイルでも作成できるのでしょうか?
そこを確認してみましょう。

まずは、データの種類。
Domino Voltといえど、最終的にはNotesアプリケーション(nsfファイル)に変換されるので、
でも触れているように、
Notesのデータの種類は、
・テキスト
・数値
・日付(時刻)
・リッチテキスト
の4種類です。

一方、Domino Voltのアプリケーション作成時にできるデータの種類を見てみましょう。
Voltアプリのフィールドタイプ
Voltアプリのフィールドタイプ

こうしてみると色々ありますが、
・テキスト
・数値
・日付
・時刻
に分けられるのではないでしょうか?

気になるのは、日付と時刻が分かれているところですね。
Notesの場合、「日付/時刻」型で一体になっています。

では、これを踏まえて、こんなExcelファイルを作成してみました。
※アプリケーションとして成立させる気はありません。
Excelサンプルデータ
Excelサンプルデータ

では、実際にこのExcelファイルを元にVoltアプリケーションを作成してみましょう。
Excelからインポート
Excelからインポートしてアプリを作成

「新規アプリケーションの作成」画面で[スプレッドシートから]を選択して、[次へ]をクリックします。
Excelファイルの選択画面になるので、先ほど作成したExcelファイルを選択します。
すると、すぐにExcelをインポートしてアプリケーションの作成を試みてくれます。

が・・・
思った通り、エラーになりました。
インポートエラー
インポートエラー

※エラーコード(最後の英数字)は、毎回変わるようなので、気をつけましょう。

考えられるエラーを取り除いていきましょう。
どう見ても、日付、時刻、日付/時刻のどこかが間違っているでしょう。
そもそも同じ形式になってないですし(笑)

まずは、「日付/時刻」列をバッサリ削除して再インポートしてみました。
結果は同じくエラーになりました。

次に「時刻」列をバッサリ削除して再インポートしてみました。
結果は同じくエラーになりました。

3度目の正直を信じて、「日付」列をバッサリ削除して再インポートしてみました。
結果は・・・
エラーになりませんでした\(^o^)/
取り込んでみようということで、[次へ]をクリックします。

タイプの設定
タイプの設定・・・!?

ここで妙なことに気がつきます。
「時刻」「日付/時刻」列が「単一行エントリー」、つまりテキストと認識されているのです。
変更しようにも選択肢に「日付」や「時刻」は存在しません。
つまり、データがテキストとして認識されているのです。
これだったら「日付」もテキストでいいじゃん!と思ったのですが、それは内緒です(笑)。
実は、「日付時刻」列はおそらくテキストになるだろうというのは想像できました。
そもそもVoltアプリケーションでは、日付と時刻は別々のフィールドですから。
では、時刻の方はなぜ時刻として認識されなかったのか?
そこで、先ほどのファイルを以下のように変えてみました。

Excelのサンプルその2
Excelのサンプルその2

複数行テキストや数値はエラーにならないことがわかったので省きました。
その代わり時刻の列を二つにしてみました。一つはコロン区切り、もう一つは日本語表記です。
こちらのExcelをインポートしたのがこちらです。

インポート結果
インポート結果

「時刻」列(コロン区切り)は時間(時刻)になりました!
しかし「時刻2」列(日本語表記)はなぜか数値になりました。変更することで単一行エントリーにはできますが、なぜ数値なのか?だったら時間にしてよ!
と言いたくなります。

とにかく、時刻の表記はコロン区切りである必要なのがわかりましたね。


では、日付はどうでしょう?
時刻との関係からすると日本語表記が怪しそうです。
そこで以下のようなサンプルにしました。
Excelのサンプルその3
Excelのサンプルその3

もう日本語表記をざっくりと外しました。
このファイルをインポートした結果がこちらです。
インポート結果3
インポート結果3

はい。きちんと日付として認識されました!
※ちなみに、日本語表記の方もインポートしてみましたが、予想通り、エラーになりました。

ということで日付は「/」区切りにしましょう。
※「-」区切りでもかまいません。「/」区切りと「-」区切りが混在しても平気です。



いかがですか?
Excelファイルを元にVoltアプリケーションを作成する場合は、先にExcelファイルの精査を行っておきましょう。

他にも気をつけるべき箇所はありますが、それは次回に持ち越しです。





それでは今日はこの辺で・・・


※2020年7月22日 追記
 日付と時刻が一緒になっている場合は、インポートできないといったような記述になっていますが、日付と時刻が一緒のセルでもインポートできます。
ただし、日本語表記はダメで、「2020/07/22 12:34:56」のように「yyyy/mm/dd hh:mm:ss」といった書式になっている必要があります。
この場合、Domino Voltでは「タイム・スタンプ」というデータタイプで取り込まれます。
誤解された方がいらっしゃいましたら、訂正してお詫びいたします。



Notes/Dominoで困ったことがあれば、弊社にお問い合わせください。
HCL Ambassadorの私が承ります!
お問い合わせはこちらから→Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ

コメント