初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2017-11-30 17:52:05

サンサン
Member

見積書ポータルについて

見積書についてお教えください。

下記の場所にfm12のファイルがあります。
https://free.filesend.to/filedn_infoind … 627b6d619o

Form1は通常の見積書です。これは理解できます。新規レコードを作成すると、
見積IDが作られます。ポータル内の商品IDに数字を入力すると、商品マスタより
商品名が自動入力されます。行数分だけ、見積詳細テーブルにデータが入力されます。

やりたい事はForm2になります。
新規レコードで見積IDを作ります。次に商品IDを入力します。商品IDに紐付いた商品名、
商品分類がポータル内に表示されます。

ただし、商品名に後で色々と情報を付け加えたいです。よって、商品マスタに直接入力
するのはまずいので、見積詳細2の商品名に値をコピーし、それを表示させたいです。

Form2で新規レコードを作成する。
商品IDにIDを入力する。ここでは「1」と入力する。
商品マスタの商品IDが「1」でかつ、商品分類が「果物」のデータを行数分記憶する。
見積詳細2の商品名に行数分値を貼り付ける。
Form2のポータルで見積詳細の商品名を表示させる。

このような事がしたいのですが、どのようにやればよいか思いつきません。
ご教授お願い致します。

Offline

#2 2017-11-30 23:33:43

Shin
Member

Re: 見積書ポータルについて

ファイルは見ていませんが。
見積もりに対して、明細テーブルを作り、リレーションを張っておきます。その明細の中に、商品マスターのIDを入力し、他の情報は関連情報とするか、ルックアップで取り込みます。その明細レコードには情報の追加などは自由です。

Offline

#3 2017-12-01 09:14:22

チポ
Member

Re: 見積書ポータルについて

私もファイルは見ていません。。

> 商品マスタの商品IDが「1」でかつ、商品分類が「果物」のデータを行数分記憶する
これが理解できません。

一つの商品IDで複数の商品があるのでしょうか?

Offline

#4 2017-12-01 12:08:56

サンサン
Member

Re: 見積書ポータルについて

1つの商品IDで複数の商品名があります。普通に考えればハテナマークがつきます。

ファイルを見て頂けなとのことなので、こんな事をやりたいというのを画像にしました。

http://fast-uploader.com/file/7067653182671/

お手数おかけします。宜しくお願いします。

Offline

#5 2017-12-01 13:27:52

チポ
Member

Re: 見積書ポータルについて

List関数
で全ての関連レコードのフィールド値をリストで得ることができます。

これをポータルの新規行に一つずつ入力してゆけばいいのでは。

Offline

#6 2017-12-01 15:11:55

サンサン
Member

Re: 見積書ポータルについて

List関数はじめて知ったので利用してみました。商品2の情報をList関数で取得できました。ありがとうございます。
これを見積詳細に挿入する方法がわかりません・・・

Offline

#7 2017-12-01 15:44:55

チポ
Member

Re: 見積書ポータルについて

リレーションの設定で、関連テーブルの新規レコード作成に許可を与えると、
ポータルに新規行に入力でき、入力することで関連レコードが作成されます。

GetValue ( List ( 商品::商品分類 ) ; n )
で、商品分類のリストからn番目の値を取り出せます。

スクリプトで、
ポータル1行目にリストの1番目の値
ポータル2行目にリストの2番目の値
・・・
と順に入力します。


気になったのですが、、
提示された画像のリレーションが
  見積2 = 見積明細2
の様になっていますが、
これだといろいろ厄介なことになりますよ。

参照する側のテーブル(関連テーブルではない方)
は常にデフォルトのテーブルオカレンスを使う方がいいですよ。

Offline

#8 2017-12-01 17:04:36

Shin
Member

Re: 見積書ポータルについて

商品ID の考え方を変更することも、将来的に考えた方がいいでしょうね。

とりあえず、商品ID が設定されれば、
見積もりID を変数に保存し、
関連レコードへ移動(新規ウィンドウ) で商品マスターテーブルへ移り、
そのまま明細テーブルのレイアウトへ変更し、
商品マスターのレコードをインポート、
明細の見積もりID を全置換で設定、
ウィンドウを閉じる、
という方法がシンプルだと思います。

Offline

#9 2017-12-04 12:15:14

サンサン
Member

Re: 見積書ポータルについて

チポさん、shinさん、ありがとうございます。なんとなくわかってきました。

もう1点お教え頂けませんでしょうか。list関数で商品分類の中身を得ることができました。
例えば、リストで取得した値の中の一番上の値をポータルの1番上の行に貼り付けしたいとします。

変数を設定[$val;値:GetValue(list(商品::商品分類);1]
ポータル内の行へ移動[選択:オン;最初の]
フィールドへ移動[所定のフィールド]

上記のスクリプトでポータルの所定のフィールドに移動はできました。ここで、変数内の情報を
貼り付けしてやりたいのですが、どのようにしてやればいいかわかりません・・・貼り付けという
スクリプトステップがありますが、どうやらクリップボード内の内容を貼り付けするみたいなので、違うと思います。
宜しくお願いします。

Offline

#10 2017-12-04 13:11:06

チポ
Member

Re: 見積書ポータルについて

スクリプトステップ
  フィールド設定
があります。

ここで計算式の指定で入力できます。

フィールドを指定できますから、
  フィールドへ移動
が不要になりますね。

また、
変数にしなくても、
計算式で直接リストから一つずつ取り出せばいいですね。

Offline

#11 2017-12-04 14:46:35

サンサン
Member

Re: 見積書ポータルについて

フィールド設定で解決しました!
ご相談にのって頂きありがとうございます!

Offline

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.008 seconds, 9 queries executed - Memory usage: 571.16 KiB (Peak: 581.95 KiB) ]