Q8:工程表で新たな受注番号で工程を作成しようとしていますが、この工程の記入を、プルダウンで表示された一連の工程(ガントチャート右側に表示されている工程一覧にある工程群)から選びたいと思いますが、いかがすれば可能でしょうか?、他
Q8-1:
工程表で新たな受注番号で工程を作成しようとしていますが、この工程の記入を、プルダウンで表示された一連の工程(ガントチャート右側に表示されている工程一覧にある工程群)から選びたいと思いますが、いかがすれば可能でしょうか?コンボボックスのテーブルをイメージしています。「工程」欄→列→列選択モード→複数範囲選択でできるかと試していますが、できません。アドバイスをいただけませんか?
A8-1:
まず、[テーブル]に列の選択リストを設定する方法をご紹介します。
1)手動で列の選択リストを設定
「実行(設定可)」ボタンで実行し、[テーブル]の上で右クリック>列>表示属性(文字列)>選択リスト>表示する...を選びます。
選択リスト編集のウィンドウが表示されるので、手動でリストを追加します。
2)メソッドによって[テーブル]に選択リストを設定
[テーブル]のメソッド:「指定列に選択項目リストを設定する(PFObjectList,int)」
を選びます。
<引数0>リスト型のデータ
<引数1>列の列番号
工程管理簡易版ではデータベースに接続されると、工程名のリストが[ガントチャート]右側の[テーブル]表示されるようになっています。この[テーブル]からリスト型データを取り出し、工程表の[テーブル]の列に設定することになります。選択項目リスト設定については簡単なサンプル作成しましたので、添付致します。
但し、各画面を構成する部品は[複合コンポーネント]内に入っていますので、工程名の[テーブル]と工程表の[テーブル]とは違う[複合コンポーネント]、つまり違う階層に入っています。
[複合コンポーネント]については『開発チュートリアル(実践編)12課』でご紹介しています。実際に設定するには、『12課P47〜』に倣って「メソッドの公開」をする必要があります。
簡単に手順を記します。
@[全体計画表]複合コンポーネント内に入り、[テーブル(ID:8-1 KEY:工程一覧)]のメソッド「指定列の列データをリスト形式で取得する(int)」を公開します。
A[作業表]複合コンポーネント内に入り、[テーブル(ID:7-5 KEY:工程指示表)]のメソッド「指定列に選択項目リストを設定する(PFObjectList,int)」を公開します。
B最上位の階層で[MySQL連携]のデータ生成イベントに、選択項目リスト設定の処理を接続します。
というような少々込み入った手順になってしまいます。
なお、列>列選択モード>複数範囲選択は、Ctrlキーを押しながら列をクリックすると複数の列を一度に選択できるという意味です。
関連ファイルやチュートリアルをご覧頂き、ご不明な点がございましたら、どうぞ再度ご連絡頂ければ幸いです。
関連ファイル:セル選択リスト設定.mzax
Q8-2:
以前お伺いした下記の件はメソッドによる方法で作成できました。
今、工程の内容(”めっき”などの項目とガントチャート表示の色)を変更しようと、いろいろ試してみましたが、画面上で変更できたように見えても、保存することができません。このテーブルを変更するには、いかがすれば良いかアドバイスいただけないでしょうか?
A8-2:
工程管理簡易版のガントチャート等の項目と色の変更につきまして、回答いたします。
・項目の保存
工程管理簡易版では、左上の工程表の領域で、受注番号、品名、納期、工程等を記入して「作成」ボタンまたは「更新」ボタンが押された際、または、「削除」ボタンが押された際にバックのデータベースが更新され、
自動的に下方のガントチャートおよび右下の項目一覧が更新されるという動作になっております。
本アプリケーションでは、このデータベースの更新が項目等の保存に相当します。
従いまして、上述のボタンが押されるまでは、あくまで画面の表示が更新されただけであり、データは保存されておりません。
・表示色の設定
工程管理簡易版では、「全体計画表」複合コンポーネント(ID:8)内の「分類テーブル作成」コンポーネント(ID:8-12)により自動的に生成される系列色を、ガントチャートの系列色と工程一覧テーブルの背景色に設定するようになっております。
ひとつの方法として、あらかじめ「テーブル」コンポーネントの背景色等として系列色を設定しておき、それをデータの更新の際に、ガントチャートと工程一覧テーブルに設定するという方法が考えられます。
チュートリアルLessopn11のアプリケーションを修正し、ガントチャートの系列の色を設定した例を、ご参考までに掲載いたします。
関連ファイル:Lesson11(ガントチャート)_色保存.mzax
Q8-3:
早速のアドバイスをありがとうございます。項目の保存をアドバイスに従い実施し、変更できることが確認できました。表示色の件は添付いただいたアプリケーションを挿入して確認したいと考えております。
項目の保存ですが、項目は反映できましたが、工程順に表示したい場合、何か方法がありますでしょうか?現時点では工程表の上から工程の順番になっていず、順番にあわせる為、Cut&Tryするしかないかとも思っています。アドバイスを頂ければ幸甚に存じます。
もうひとつアドバイスをいただけませんか?
ガントチャートで稼働時間だけを表示する方法はありますでしょうか?
また、マニュアルにある、稼働時間の設定を「ガントチャート」→「その他」→「稼動日時」→「設定する…」と入力しましたが、非稼働時間がグレイで表示されません。何か理由が考えられますか?
A8-3:
お問い合わせの件、おそらく工程管理簡易版の「工程一覧」テーブルの表示の順序についてであると判断し、回答させていただきます。
ガントチャートの表示および「分類テーブル作成」から生成されるガントチャート用のデータの項目(系列)の順序に関しましては、名前の順にソートする/しないの設定であれば可能ですが、任意のユーザ指定の順序に設定することはできません。
従いましてそれらデータをそのまま「工程一覧」に設定する現在の仕様では、工程の順序はユーザの思ったものになりません。
「工程一覧」の表示順序を変える方法はいくつか考えられます。
例えば、工程の順序をあらかじめテーブル等に記入しておき、その順に従い、工程一覧のデータを作成するという方法です。
サンプルアプリケーションを作成しました。ご参考までに掲載いたします。
このアプリケーションでは、あらかじめ左下のテーブルに、上から下の順序で、工程名、色を定義しておき、その順序に従って右側の「工程一覧」用の工程名・色のデータを作成しています。ガントチャートの色データについては、ガントチャートの系列名の順序に従って作成しています。
その他、工程一覧のテーブルに、工程名の表示順序を決める数字を入れる列を追加し、その列についてソートするという方法等も考えられます。
関連ファイル:Lesson11(ガントチャート)_工程順序・色保存.mzax
ガントチャートについて、非稼動時間を描画せずに時間軸方向に詰めて、稼働時間を描画することはできません。
非稼動時間の描画についてですが、
「ガントチャート」→「その他」→「非稼働日の背景」は「描画する」に設定されておりますでしょうか。
また、
「ガントチャート」→「その他」→「非稼働日の背景色」は適切に設定されておりますでしょうか。
Q8-4:
稼働時間のみの表示はできないこと、了解いたしました。
下記のアドバイスにある、非稼働日の背景の描画、および背景色の設定はされております。 非稼働日、土、日曜日は正しく指定したグレイになっています。ただ、稼働時間を指定したにも拘わらず、稼働日の非稼働時間の表示ができていません。何か他に確認すべきことがありますか?
いただいた、アプリケーションを工程管理簡易版に埋め込みたいと試行していますが、まだまだ勉強途中の為、四苦八苦しています。 何か参考になるチュートリアルはありませんか? 工程管理簡易版の複合コンポーネントにアプリケーションの必要コンポーネントを挿入して作成しようと考えています。
たびたびお願いして、申し訳ありません。
作成途中の工程管理簡易版ベースのアプリケーションを見られた方が理解しやすいかと掲載させていただきます。
関連ファイル:08242010F ProductionControl work.mzax
A8-4:
稼働日時の設定で指定した「時間」が、ガントチャートの非稼働日(時間)の表示に反映されない点ですが、
現在のMZプラットフォームでは、
「ガントチャート」→「時間軸」→「小目盛間隔...」
の設定が、「日」以上の単位のとき、日稼働日の表示が日単位で描画されてしまいます。
この解決には、上述の小目盛間隔の設定を「時」に変更してください。
数値には「24」を設定してください。
ただし、こうしますと、これまで日にちが表示されていた時間軸の小項目のラベルが目盛りの位置0時を表す「0」になってしまいます。
そこで、
「ガントチャート」→「時間軸」→「小項目ラベル表示形式..」について「設定する...」を選択し、「d」と入力してください。
「d」は日にちを表現する形式です。
ddとしますと2ケタの日にちになります。
また、yは年、Mは月、hは時(12時間制。24時間制の場合はH)、mは分、sは秒を表します。
例えば、yyyy/MM/ddとすれば2010/08/25のような表示になります。
このたびご指摘いただきましたガントチャートの動作はわかり難いかも知れません。
今後の開発において、検討させていただきたいと存じます。
以上よろしくお願い申し上げます。
ドキュメントが十分に揃っていないため、ご迷惑をおかけしております。
---
(a)既存のデータを再利用して新たなアプリケーションに追加する際の操作はいくつかございます。
・アプリケーションビルダーのコピー機能
例えば、アプリケーションビルダーを二つ起動し、一方でコンポーネントを選択して(shift押下で複数選択も可能)、コンポーネント上でマウス右クリックして「コンポーネントコピー」を選択してコピーし、他方のビルダー上でマウス右クリックして「コンポーネント貼り付け」を選択しますと、貼り付けが可能です。
コンポーネント接続も再現されますが、コピー範囲外のコンポーネントと「アプリケーション」コンポーネントへの接続は空欄となります。
・アプリケーションビルダーの挿入機能
挿入したい階層(複合コンポーネント内も可)で、ビルダー下の「挿入」ボタンを押し、アプリケーションファイルを選択しますと、挿入が可能です。ただし、「アプリケーション」コンポーネント等への接続は空欄となります。
これらを含むアプリケーションビルダーの操作については、わかり難く申し訳ございませんが、「アプリケーションビルダー操作説明書」をご覧下さい。
(b)ガントチャート関連の操作について
関連する処理の作成方法等につきましては、不十分ではございますが、例えば、以下のドキュメントに記載されております。
・ガントチャート関係
・チュートリアル実践編Lesson11
・チュートリアル活用編Lesson14
・エクセル連携導入チュートリアル
・サンプル (グラフ化)
・時間計算
・サンプル (勤務時間計算)
・テーブルデータの基本的な操作
・テーブルデータ操作サンプル
----
以上ドキュメントは、Windowsのスタートメニュー内のMZ Platformのアプリケーション群中の「ドキュメントインデックス」からたどることができます。
あまり良いお答えになっておりませんが、以上回答させていただきます。
ご不明な点はご遠慮なくお問い合わせください。
Q8-5:
たびたびのサポートをありがとうございます。
アドバイスを受けましたチュートリアルなどを勉強しておりますが、同時に下記のアプリケーションを試させてもらいました。
このアプリケーションでは、テーブル2に記入された工程名(ここでは姓)で工程一覧が’色・工程順序保存用’テーブルに基づき作成されます。 確かに記入された工程に関しては、順番、色が期待どおりに表示はできました。
実は今考えていたことは、工程一覧を全ての工程が記述されている(色も含め)マスターとして位置づけ、工程表の工程を記入する際、個々にタイプインするのではなく、工程一覧の工程名がプルダウンで表示され、選択することです。
作業計画作成者は必ずしもPCに慣れていないため、使い易くすることを目的にしています。
工程管理簡易版を活用するとして、次に考えたついたのが、工程一覧作成の目的でダミーの受注番号と工程を作成、工程一覧に反映させることですが、記入された工程の順番と工程一覧の表示の順番のアルゴリズムはいかがなっているのでしょうか?素人考えで申し訳ありませんが、ダミーの受注の工程順をそのアルゴリズムに合わせて記入すれば、工程一覧の順番も管理できうかと考えた次第です。
又は工程一覧をテーブルで作成して、工程表から作成するのをやめたほうが良いのか、とも考えております。
A8-5:
工程管理簡易版ではガントチャートのデータを「分類テーブル作成」を用いて生成しているのですが、ソートが実行されておりますため、得られる系列名の順は文字コード順になっております。
「分類テーブル作成」においてソートしないように設定することも可能ですが、系列等の順序は制御できないとお考え頂いたほうが良いと存じます。
ご希望の動作ですと、昨日お送りしたサンプルの左下の色・工程順序保存用のテーブルをマスター兼工程一覧として、現状の工程一覧のテーブルと入れ替え、このマスターの工程名の列からリストを生成し、このリストを工程表の列に設定する(プルダウンのための項目のリストを設定する)ということではいかがでしょうか。
これまで工程一覧を工程表の更新のたびに更新しておりましたが、その処理は削除することになります。
昨日お送りしましたサンプルを変更したものを掲載しますので、ご参照ください。
左上に工程表相当の表を追加しておりまして、"氏名"の列のセルを選択しますと、右側の工程一覧の氏名の一覧が表示され選択できるようになっております。
関連ファイル:Lesson11(ガントチャート)_工程順序・色保存2.mzax
Q8-6:
いただいたアプリケーションを活用させてもらおうと挿入し、接続コンポーネント、起動メソッドを小職のアプリケーションに合わせて変更したところ、期待どおりに動作しましたが、工程一覧の設定を削除していなかったため、新たに工程表の工程情報を更新すると、工程情報から工程一覧を設定する仕組みが生きていて、もとの状態になってしまいました。
このため、工程一覧を設定する接続コンポーネントを削除、実行させたところ以下のようなエラーが発生しました。
The size of data must be 0, not 11[テーブル格納変数 ID8-9 (KEY”作業領域”]
テーブル格納変数の起動メソッドなどを確認しても、関係するような情報は見つかりません。
このエラーに意味はどういうことでしょうか?
たびたびの質問で申し訳ありません。工程表作成のサブブルーティンを実行させないと工程一覧は表示されませんが、これでも良いかなとも考えていますが、何かご教授があればお願いしたい次第です。
A8-6:
先日お送りしましたサンプルアプリケーションは、工程表の更新の際の「工程一覧」の更新を行わないことを前提としております。
また、全工程名が必ず工程一覧に登録されている必要があります(ガントチャートのタスク選択時に工程一覧の工程を選択する処理で使用)。
先日お送りいただきましたアプリケーションに該当処理を反映するためには、工程一覧の更新処理を停止する必要がございます。
具体的には、以下の3箇所の修正が必要です。
「全体計画一覧」複合コンポーネント(ID:8)内の「否定演算(NOT)」コンポーネント(ID:8-27)の処理完了イベントの最後のメソッド起動 [サブルーチン(8-14)の「処理を呼び出す()」の起動]を停止します。(工程一覧表作成を停止)
また、工程一覧テーブルがクリアされないように、同「否定演算(NOT)」コンポーネント(ID:8-27)の処理完了イベントの2番目のメソッド起動 [テーブル(8-1)の「全行を削除する」の起動]と、「サブルーチン」コンポーネント(ID:8-6)のアクションイベントの2番目のメソッド起動 [テーブル(8-1)の「全行を削除する」の起動]も停止します。
ご連絡いただいたエラーは、おそらく、サブルーチン(ID:8-14)において、テーブル格納変数(ID-8-9)に工程一覧の色のデータを列指定で設定する際、テーブルデータの行数は0行であるのに、色のリストのデータの個数が11個であるため、発生したものと思われます。
上述の修正では、サブルーチン(ID:8-14)の処理自体を停止しますので、このエラーは発生しなくなるものと思います。
ご連絡:
アドバイスの内容(更新処理の停止)はほぼ実施していましたが、いろいろと試行、修整したため、再度見直さないと、うまく動かないようです。内容を理解しながら、確認します。
各コンポーネントの実施内容、動きが分かれば、理解が進むのですが、そのためには多分デザインにまで踏み込まないと駄目かなと考えており、(コンポーネントリファレンスは専門的すぎます。)サンプルを参考に、多分こういうことが実施されていると推定して取り組んでいますので時間がかかってしまいます。Cut&Tryで時間をかけて、理解することにします。
アドバイスはいつもヒントを与えてくれますので助かっています。ありがとうございます。