App Inventor2クローン有料サービス「AI2LiveComplete」で開発中のハンディターミナルアプリがほぼ完成。
あとは融通がまったく利かないオフコンとの連携部分をどうするか?
これ、まるで何度かチャレンジした難所
FileMakerGO製ハンディターミナルアプリでも、この部分は解決できず未解決のまま・・・
App Inventorアプリで解決すべき2つの問題
1:アプリから書き出す受注明細(固定長ファイル)先頭の空改行
オフコンへインポートするとエラーが起きる!
2:オフコン用指定ファイル名は拡張子が無いこと
App Inventorのshareコンポーネントで拡張子無しファイルに共有を
掛けるとパーミションエラーでアプリが止まる!
取り合えずFileMakerGOアプリ開発時に考えたアイデアの焼き直し
受注明細をメール本文に挿入しGmail送信。
このメールを受信し、オフコンでエラーが起きない固定長ファイルとして作り直すAccessVBAを開発。
AccessVBAにPOP3クライアント機能を実装する方法は、FileMakerGOアプリ開発時に調査済み。
VBAから呼び出すコマンドラインPOPクライアントがこれ
[Command Line Pop Client (Free)–CODEODE]
まず、App Inventorの固定長ファイル生成機能を修正。
固定長データの位置が分かるように、直前と直後にマーカー(3文字の記号)を追加。
直前行には、SOF(=Start of File)
直後行には、EOF(End of File)。

マーカーを追加した固定長データをThunderbirdで受信すると

ワンタッチで、同じメールを「受信」「固定長データ部だけ取出」「指定ファイル名で指定フォルダーへ保存」するmsAccessプログラムを開発中。
操作画面はこんな感じ

「メール受信」ボタンを押すとコマンドラインPOP3クライアント「popclient.exe」が起動しメールを受信。
受信されたメールは、指定フォルダにテキストデータとして保存されます。
mailをテキストエディタで開くと

VBAで、このテキストファイルをAccessへインポート

後はLOOPで回して不必要なレコードを削除。

事前準備完了後、固定長ファイルを指定フォルダーへ保存すればオフコン対応の完了です。
あと数日あれば、このAccessVBAも完成出来そうです
余談ですが、久しぶりにVBA開発して感じたのは、App Inventorの開発効率が恐ろしく高いこと!
Access開発ならそれなりにスラスラ書けると自負している私、でもApp Inventor開発はその10倍早くプログラミング出来ます!
App Inventor、スゴイ
コメントを残す