[ai]IISのWEBサーバが遅いぞ!でもPCはもっと遅い!!


AI2LiveComplete(=AppInventor+SQLte)でのハンディターミナルアプリ開発で一番難易度が高いのがマスターインポート機能

理由は2つ

1:SQLiteにCSV一括インポートのような機能が無い

唯一の方法は、Amerkashiさんがブログで紹介してるBulk Data Loadだけ。

[SQLite Bulk Data Load–Hossein Amerkashi’s Blog]

難問がいっぱい!

  • bulk insertファイルを生成する専用MS-Accessプログラムが必要
  • SQLiteの仕様で、1ファイルmax 500件まで
  • 数万行ある商品マスターの場合、insertファイルが約40個に小分け生成
  • Accessが作るs-JISファイルを、UTFに変換
  • FTPサーバへアップロード

このAccessプログラム開発、猛烈に難しかった!

その上で・・・・

2:数十個のBulk Insertファイルをハンディアプリにどうインポートさせる機能か!

具体的には、

  • AppInventorのwebget機能でファイルをhttpダウンロード
  • そのINSERTファイルを実行
  • ファイルの数だけLOOPする

ここで問題なのがWEBサーバ
負荷が高くなり過ぎ処理が間に合わない

毎回1ファイル500行 x 2・3個分、インポートエラーが起きる!

IIS webサーバ(Windows10profesional)でエラー多発
次に、フリーソフト「AN HTTP」でエラーが減ったが、まだ不安定

[AN HTTP Server Home Page]

これがエラーが起きるFOR EACHブロック
App Inventor開発:安価な中華タブレット用のハンディーターミナルアプリを作るぞ!:

このLOOP中、5回に1秒ぐらいのポーズを入れたいが方法がわからない。

AccessVBAならmsgbox「インポートを始めます OKボタン」を表示させるとプログラムを一時停止できる。

しかし、App Inventorで「メッセージ表示」処理を加えても、裏でLOOP処理はそのまま継続実行してる!

いろいろ試しましたがインポート処理時間を遅らせる方法が見つかりません

まぁ、商品マスタはJANコードをスキャン時、商品名と荷姿を表示させるだけのもの。
受注・棚卸の基本作業に支障は起きない。

取りあえず、解決策が見つからないまま、僕のCorei5マシンをハンディアプリ用bulk insertファイルダウンロードwebサーバとして動かそう。

ちょっと疲れた


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA