こんにちは、
自動化チームが所有するコマンドラインユーティリティを介してすべてのデータがJMPにインポートされる私の会社のアドインを管理します。私のアドインは、ユーザーの要求をフォーマットされたコマンドに変換し、そのコマンドをバックグラウンドで発行します。データはテキストファイルとしてユーザーシステムに返されます。私のアドインはテキストファイルからデータを読み込むことができます。
私が持っている問題は、列がユーザーの要求に基づいて変わるということです。しかし、各テーブルには、一貫してそこにあるDATE(フォーマット:YYYYMMDD)およびTIME(フォーマット:HHMMSS)列があります。私はいくつかの列のフォーマットを指定するテキストファイルを開く方法を見つけませんでしたが、JMPに残りのデータタイプを混ぜ合わせます。
現在の実装では、DATE列とTIME列を文字型に変換し、時間を先頭に0を付けてHHMMSSにフォーマットし、次に表をループ処理してDATE列を日付に解析し、HH、MM、およびSS部分を変換する私はそれらをDATE部分に追加できるように数秒にします。
dt = Current Data Table();
:DATE << Data Type(character);
:TIME << Data Type(character);
:TIME << Set Each Value(Repeat("0", 6-Length(:TIME))||:TIME);
dt << New Column("DATETIME");
:DATETIME << Format("m/d/y h:m:s");
For Each Row(
:DATETIME[Row()] = Parse Date(:DATE[Row()], "YYYYMMDD") +
In Hours(Num(Substr(:TIME[Row()], 1, 2))) +
In Minutes(Num(Substr(:TIME[Row()], 3, 2))) +
Num(Substr(:TIME[Row()], 5))
);
DATE列とTIME列を単一のDATETIME列に結合するためのよりクリーンな方法はありますか?