Q101:@複数画面の取り扱いについて。AMySQLへ保存されるデータフォーマットについて。
Q101-1:
現在、工程管理、作業時間報告のアプリケーション作成に、向けて勉強中です。
構成として、まずデータベース(MySQL)にアクセス(アクセスする画面、パスワード入力)→ 工程管理簡易版(MZ Platformの説明で紹介されているアプリケーション)→作業時間報告(→予実管理)を考えています。
1. MZ Platformでは、ひとつのアプリケーションでひとつの画面(入力、表示)となっている気がしますが、上記では少なくとも3つの画面を連携させる必要があります。どうすればひとつの画面から次の画面(アプリケーション)へ移れるのでしょうか?具体的なサンプルなどあれば紹介いただけませんか?
2. データベースに保存されるデータを処理して、予実管理のデータができればと考えています。MySQLへ保存されるデータフォーマットを理解しないとデータ処理はできないかと思っていますが、その場合、参考になる例、説明はどこかにありますでしょうか?
いろいろと勉強中ですので、ピントはずれの質問かもしれませんが、何かご教授いただければ助かります。
お役に立つか分かりませんが、今考えている画面イメージを添付します。
A101-1:
1.複数画面の取り扱いについて
MZ Platformでは、ひとつのアプリケーションで利用する画面(ウィンドウ)の数に制限はありません。2つのウィンドウを連携させる例としましては、付属の「注文票アプリケーション作成チュートリアル」のLesson.2をご覧いただくのがよろしいかと存じます。
注文票アプリケーションはすでに講習会でも扱いましたが、Lesson.2では、別ウィンドウとして表示したカタログ表から品物を選択して登録できるように、機能の拡張を行っています。
2.MySQLへ保存されるデータフォーマットについて
MySQLに限らず、現在MZ Platformで接続可能なデータベースは関係データベースと呼ばれる種類のもので、複数の表から構成されます。イメージとしては、複数シートを持つエクセルファイルのようなものとのご理解で差し支えございません。
工程管理システム簡易版で用いているデータベースは、以下の2つのテーブルから構成されています。
(1) projectテーブル(受注情報を登録しているテーブル)
列名 |
データ型 |
説明 |
id |
整数 |
自動設定される一意の番号 |
label |
文字列 |
受注番号 |
product |
文字列 |
品名 |
delivery |
日付 |
納期 |
(2) taskテーブル(各工程情報を登録しているテーブル)
列名 |
データ型 |
説明 |
id |
整数 |
自動設定される一意の番号 |
process |
文字列 |
工程名 |
projectLabel |
文字列 |
該当する受注番号 |
workingTime |
整数 |
作業時間(分) |
dateStart |
日付 |
作業開始日時 |
dateEnd |
日付 |
作業終了日時 |
isCompleted |
trueまたはfalse |
完了/未了を示す真偽値 |
データベースの構成は、工程管理システム簡易版左上の[データベース管理...]ボタンクリックで表示される「ローカルMySQL管理」ダイアログでご覧になれます。ここで表示される情報の詳細につきましては、「工程管理システム導入マニュアル」の「A. MySQL連携複合コンポーネント」をご覧ください。
また、AP_DATA\Productionフォルダ内にある、データベース初期設定用ファイルproduction.sqlには、このデータベースの作成方法がコマンドレベルで記述されています。このファイルを読むにはSQL言語の知識が必要ですが、SQL言語の知識は今後のシステム開発を進めていく上で重要なものとなりますので、参考書などを用意されておくとよろしいかと存じます。
備考:「実現したい処理別」の「Q&A123」にも掲載。