生産スケジューラのAsprova
 
トップよくあるご質問データ入出力
よくあるご質問

データ入出力

よくある質問内を検索:

インポートやエクスポートの時間を短縮するには (2013/01/17)

Q:インポートやエクスポートに数十分以上かかってしまいます。時間を短縮するにはどうすればよいでしょうか?

A:

インポートやエクスポートにて時間がかかっている場合、以下の設定を行う・見直すことで改善できます。

インポートの場合

Asprova Ver.10.0.1.0におけるインポートの計測時間例を以下に挙げます。

[オーダテーブル 100万行]
サーバマシンスペック Windows Server2003 R2 (x64) Intel® Xeon® CPU 5160 @ 3.00GHz 2.99GHz メモリ22GB
データソース SQL Server 2008
クライアントマシンスペック Windows 7 (32bit) Intel® Core™ i7 CPU X990 @3.47GHz 3.47GHz メモリ3GB
インポートする はい(差分)
マッピングしたプロパティ 31個
SQLコマンド形式 フルテキスト形式
時間 44秒~50秒
備考 100万行すべてをインポート。

[製造BOM 60万行]
マシンスペック Windows 7 (x64) Intel® Zeon® CPU X5690 @3.47GHz 3.46GHz(2プロセッサ) メモリ80GB
データソース Microsoft Access 2010
インポートする はい(洗い替え)
マッピングしたプロパティ 34個
SQLコマンド形式 フルテキスト形式
時間 100秒~110秒
備考 mdbファイルはAsprovaと同じマシン上。インポートする前のオーダテーブルは空。

このように、大量データでもAsprovaは高速にインポートできます。インポートに数十分以上の時間がかかっている場合は、以下の設定を確認・変更してみてください。

①データソースとの距離
データソース(DB、テキストファイル)が、ネットワークを介してAsprovaと異なるマシン上にある場合は、インポート時間はネットワーク回線に大きく依存します。例えば、Microsoft Accessのmdbファイルに100万行のデータがある場合、そのmdbファイルをAsprovaが実行されているマシン上に手動でコピーするのに時間がかかる場合は、インポートにも同じように時間がかかります。その場合は、事前にデータソースをAsporvaが実行されるマシンもしくはその近辺にコピーしておくと良いです。これはエクスポートも同じです。

②必要なプロパティのみをマッピングする
必要のないプロパティがマッピングされていると、その分だけ、データの転送と文字列の読み取りに時間がかかります。これはエクスポートも同じです。

③デフォルト値を活用する
あるプロパティが、ほどんどのオブジェクトで同じものを使用する場合は、プロパティ定義のデフォルト値を使用するようにし、そのプロパティがインポートする文字列を減らすと、効果があります。例えば、製造BOMテーブルのマスタ使用指図の有効条件式にて、ほとんどすべての行で同じ式を使う場合は、プロパティ定義のデフォルト値にその式を記述し、デフォルト値と異なる式だけを外部のデータソースで作成してインポートします。

④差分
"データソースがOLE DBの場合、<$差分$>を選択することで、変更があったレコードのみを処理対象とすることができます。
変更されたレコードが全レコードの一部の場合であれば、データ転送量が減少しますので、インポート・エクスポート時の処理時間を短縮することができます。"

⑤SQL外部フィルタを活用する
"データソースがOLE DBの場合、<$SQL外部フィルタ$>の機能を利用して、インポートする対象のデータを絞り込むことが出来ます。
絞り込むことでデータ転送量が減少しますので、インポート時の処理時間を短縮することが可能です。"

エクスポートの場合
①データソースの距離、必要なプロパティのみのマッピング
 インポートの場合の①と②を参照してください。

②SQLコマンド形式を変更する(Oracleの場合)
"データソースがOLE DBでOracleに接続している場合で、エクスポートに時間が掛かる場合があります。
そのような場合は、データ入出力の「SQLコマンド形式」プロパティ(基本タブにあります)の設定を"フルテキスト形式"から"パラメタ形式"に切り替えることで、エクスポート時間が短縮できます。(短縮される割合は、環境に依存します)"

作業移動した結果を製造予定表に反映できますか? (2010/11/17)

Q:リスケジューリング後に手動でガントバーを移動してそのままエクスポートした場合、手動で移動した結果を製造予定に反映してエクスポートできるのでしょうか?

A:

ガントチャートで作業移動した結果を予定表に反映して、エクスポートすることは可能です。
この場合、「予定表生成」コマンドがエクスポートの前に実行される必要があります。

エクスポートの前に予定表生成を実行する計画パラメタを作成することで意図されている内容を実行することができます。

進んだ実績を元に戻したい (2009/11/20)

Q:実績をインポートするとき、進んだ実績を元に戻したいのですが、可能ですか。

A:

実績テーブルのインポートに関しましては、
基本的に最も進んだ実績を採用いたします。

ただし、お問合せいただいたとおり、
進んだ実績を元に戻したい場合もございます。
このような場合、実績テーブルの上書きフラグを利用いたします。
具体的には、実績テーブルの上書きフラグを「1」に設定してインポートいたします。

このほか、作業テーブルからのみ実績がインポートされるようにし、
外部データが有効になるようなマージルールを設定することも挙げられます。

製造BOMのユーザプロパティの仮想プロパティ式の値がエクスポートで出力されません。 (2009/07/29)

Q:製造BOMのユーザプロパティの仮想プロパティ式の値が製造BOMテーブルには表示されるのですが、エクスポートで出力されません。

A:

ユーザプロパティの値を外部に出力する場合は
製造BOM(IO)クラスのユーザ指定使用可能プロパティに設定します。

一方、マスタ使用指図のユーザプロパティの仮想プロパティ式に
 ME.最終品目.品目名
のような式を設定したとします。
これで製造BOMテーブルには表示することができますが、
仮想プロパティの結果を外部に出力することができません。

これはエクスポートする際には、製造BOM(IO)クラスとして出力しているためです。

以下の設定を行なうことで外部に出力することができます。


  1. 「テーブル表示」-「高度な設定」-「クラス定義」メニューからクラス定義テーブルを表示します。

  2. 「製造BOM(IO)」クラスに新規プロパティを追加します。

  3. 追加したプロパティのプロパティ定義を編集し、仮想プロパティ式を設定します。

  4. フィールドマッピングで追加したプロパティを接続します。

製造BOM(IO)クラスのユーザ指定使用可能プロパティを設定する方法については、
以下をご参照ください。
 ・マスタ入力指図
 ・マスタ使用指図
 ・マスタ出力指図
などに追加したユーザプロパティの値を外部に出力する場合には、
製造BOM(IO)クラスの「ユーザ指定使用可能プロパティ」に設定する必要があります。
詳細はAsprova APSのヘルプの
 「データ入出力」-「ユーザ指定使用可能プロパティ」
をご参照ください。

式の中にカンマがあるときのCSVファイルのインポート/エクスポートがうまくいきません (2008/07/09)

Q:式の中にカンマがあるときプロパティを含むテーブルをCSVファイルにエクスポートし、 インポートすると、列がずれてうまくいきません。どのようにしたら良いでしょうか。

A:

方法は2つあります。

① 「フィールド区切り文字と小数点文字」をカンマ区切りではなく、タブ区切りにする。
② ダブルクォテーションでくくる。フィールドマッピングでマップしたフィールド(右側の列)にて
  「ダブルクォーテーションでくくる」を「はい」にする。

テキストファイルのインポートのとき、納期変更を受け付けないようにするには (2008/06/26)

Q:テキストファイルのインポートのとき、一度インポートしたものに対して、2回目のインポートを受け付けないようにするにはどうすればいいですか?たとえば、オーダテーブルで納期変更や数量の変更を受け付けないようにするには?

A:

データ入出力テーブルにて、該当するDBIOオブジェクトを選択し、プロパティウィンドウの
インポートタブにある「レコードマージルール」でダイアログを起動してください。ここで、
外部変更フラグと内部変更フラグのマトリックスが出てきますが、これの該当する箇所を
「内部」に変更してください。セルを選択して右クリックメニューを出せば、一括変更ができます。
(詳しくは、ヘルプ「レコードマージルールダイアログ」(HelpNo.:734500)参照)

次に、フィールドマッピングウィンドウの右側の列(つまり外部側)にて、該当する
フィールドをクリックし、プロパティウィンドウ「基本」タブの「プロパティマージルール」
プロパティを「内部優先」にしてください。

これで設定は完了です。「内部」と「内部優先」は紛らわしいですが、
 内部:インポートしない
 内部優先:すでに値が設定されていない場合のみインポート
となっています。
(詳しくは、ヘルプ「マージルールと変更フラグ」(HelpNo.:757140)
参照してください。)