みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
ポータルの表示で色々やったのですが、やはり理解不足で、できませんでした。
テーブル名[生産計画]
フィールド名:生産日(1)
フィールド名;生産ライン(2)
テーブル名[仕掛名]
フィールド名;機種名(3)
フィールド名;ロットNO
フィールド名:仕掛数
フィールド名:生産日(4)
フィールド名:生産ライン(5)
テーブル名[仕様]
フィールド名:機種名(6)
フィールド名:材料名
フィールド名;箱名
フィールド名:生産日(1)とフィールド名:生産日(4)で
リレーションシップ
フィールド名;生産ライン(2)とフィールド名:生産ライン(5)で
リレーションシップ
フィールド名;機種名(3)とフィールド名:機種名(6)で
リレーションシップ
仕掛名のデータは
機種名 ロットNO 仕掛数 生産日 生産ライン
AA101 F-1 1500 2014/7/14 Aライン
AA201 F-1 2500 2014/7/13 Bライン
AA301 F-2 1200 2014/7/14 Dライン
印刷したいのはポータルでこんなレイアウトです。
[ヘッダ部分は]
まるまる工程 生産計画
[ボディの部分は]
生産日2014/7/14 生産ライン Aライン
[ポータルで表示させて]
機種名 ロットNO 仕掛数 材料名 箱名
これに必要なライン分だけ新規レコードを追加して表示させて印刷しました。
----------------------------------------------------
まるまる工程 生産計画
生産日2014/7/14 生産ライン Aライン
機種名 ロットNO 仕掛数 材料名 箱名
AA101 F-1 1500 AQW-478 AA10
AA101 F-2 1000 AQW-478 AA10
AA501 F-1 1000 EWQ-987 AA20
生産日2014/7/14 生産ライン Bライン
機種名 ロットNO 仕掛数 材料名 箱名
AA201 F-1 2500 PPW-478 AA30
AA201 F-2 1000 PPW-478 AA30
AA601 F-1 1000 EER-001 AA40
------全部で5ラインを表示--------------------------------
現在は
最初から新規レコードでBライン、Cライン、Dライン、Fライン、Aラインと
5枚のレコードをあらかじめ作成しておいて、
印刷したい時にこのレイアウトを表示させて生産日の5か所に日付を入力しています。
このへんは、どうやってスクリプトを書いたら良いのか、わからず
困ってしまいました。
環境
FileMaker 12
Windows7
いつまでも、理解不足でもうしわけございません。
新規フィールド(日付、ライン)を設けてグローバルに設定
[ボディの部分は]
日付(グローバル) → カレンダー
ライン(グローバル) → 値一覧のリスト
[フィルタ(検索)条件は]
生産日=日付(グローバル) AND 生産ライン=ライン(グローバル)
これでどうでしょうか!?
フィールド設定[ライン(グローバル);ライン名]
印刷実行
これの繰り返し
あるいち日の生産計画をラインごとの一覧で印刷
ですよね?
で、質問です。
1.一ラインが複数ページになることは無いですか
2.一ラインのリストの途中で改ページが有った場合どうしますか
等、
状況と、ご希望の表示法によって、
ポータルがいいのか、関連テーブルのリストがいいのか。。
Offline
チポさんおはようございます、いつもありがとうございます。
1ラインの生産機種は、夜勤も含めて5機種~15機種くらいです。
複数ページになる事はまず無いと思います。
リストの途中で改ページ。。。すみません、理解できません。あるフィールドに文字数が多くて表示できない
ことでしょうか?
現在は、エクセルで全ラインを1枚のA4用紙横にレイアウトした用紙に、2段組みで
データを入力しています。
FileMakerは横は苦手なので縦にしようと思っています。
理想は全ラインを縦1枚ですが、レイアウト上、各ライン別に横1枚が見やすいかな?と
思っています。
ポータルがいいのか、関連テーブルですが。。。以前質問したらポータルをすすめられて作ろうとしています。
全体で1ページに収まるのなら、ポータルでもいいでしょう。
計算計画テーブルで、
その日の全ラインのレコードを作るだけで出来るでしょう。
ラインが5つ程度なら、
1ラインのレコードを作るスクリプトを5つつなげればいいのでは。
以前質問したらポータルをすすめられて作ろうとしています
表示にはもちろんポータルは有用ですが、
それが印刷でページをまたぐようだと、面倒なことになります。
その場合は、関連テーブルのリスト表示が常套手段ですね。
Offline
新規フィールド(日付、ライン)を設けてグローバルに設定
[ボディの部分は]
日付(グローバル) → カレンダー
ライン(グローバル) → 値一覧のリスト[フィルタ(検索)条件は]
生産日=日付(グローバル) AND 生産ライン=ライン(グローバル)これでどうでしょうか!?
フィールド設定[ライン(グローバル);ライン名]
印刷実行
これの繰り返し
FM12始めたばかりさんおはようございます。
グローバルに設定して、印刷用のスクリプトを作り始めました。
テーブル名[生産計画]
フィールド名:生産日(1)をグローバルに設定しました。
印刷するスクリプトを作成しています。こんな感じです。
レイアウト切り替え[「印刷日を設定画面」(生産計画)]
フィールドへ移動[生産計画::生産日]
スクリプト一時停止/続行[制限時間なし]
レイアウト切り替え[「印刷page」(生産計画)]
印刷日を設定画面は
生産日を入れるフィールドに日付を入れてその下にボタンを設けて
日付を入力後にボタンをクリックでスクリプトが再開して
印刷ページへレイアウトが切り替わる感じです。
印刷ページはあらかじめ作成した5つのライン分のレコードがあり
その各中にポータルでデータが表示されました。
ただ今はテストデータとして
テーブル名[仕掛名]に2日分でデータしか入力してないのですが、
ない日にちを指定したばあい、0のデータの用紙を印刷してしまいます。
その場合、「データが入力されていません!」とアラートを出して印刷しない様にしたいのですが。。。
IF get(対象レコード数)=0
カスタムダイアログを表示
(レイアウト切り替え)
現在のスクリプトを中止
End IF
又は、get(最終エラー)=401で検索時に判定とか
http://www.filemaker.co.jp/help/html/error_codes.html
スクリプトよりもポータル内容が変更されたら、そのまま印刷が楽と思いました。
内容も確認できますし・・・
IF get(対象レコード数)=0
カスタムダイアログを表示
(レイアウト切り替え)
現在のスクリプトを中止
End IF又は、get(最終エラー)=401で検索時に判定とか
http://www.filemaker.co.jp/help/html/error_codes.htmlスクリプトよりもポータル内容が変更されたら、そのまま印刷が楽と思いました。
内容も確認できますし・・・
FM12始めたばかりさん、ありがとうございます。。
対象レコード数ではだめだったので、InEmpty関数を使いました。(印刷の部分はまだです)
-----------------------------
レイアウト切り替え[「印刷日を設定画面」(生産計画)]
フィールドへ移動[生産計画::生産日]
スクリプト一時停止/続行[制限時間なし]
If[IsEmpty(ロット仕掛::機種名)=1]
カスタムダイアログを表示["警告!" ; "その日のデータは入力されていません。"]
If[Get(最終メッセージ選択)= 1]
レイアウト切り替え[TOP画面 ]
End If
Else
レイアウト切り替え[「印刷page」(生産計画)]
End If
---------------------------------
これで、データがあると印刷ページへ行き、データがないとTOP画面へ戻るように
なりました。
FM12始めたばかりさんの、
フィールド設定[ライン(グローバル);ライン名]
印刷実行
これの繰り返し
これではラインごとに改ページで印刷されますよ
Offline
Pages: 1
[ Generated in 0.009 seconds, 11 queries executed - Memory usage: 548.1 KiB (Peak: 569.01 KiB) ]