みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
FMP16 Win7
いつもご親切にアドバイス頂きありがとうございます
今回もどうぞ宜しくお願い致します
売上履歴より参照し返品表の作成です
商品コードより検索をかけ、該当履歴を明細に反映させようとしておりますが
検索件数が2件以上の場合、意図しないレコードの値が反映されます(一番上の来ているレコードの値)
希望はリスト表示より選択した値を表示させたく考えております
解決方法はございますでしょうか??
ーーーーーー以下、TOとフィールドの説明ーーーーーーーーーーーーー
テーブルオカレンス
【返品明細】 【売上履歴】
商品CD = 商品CD
フィールド設定
【返品明細】
売上日 (日付)計算値:Date ( Middle ( 売上履歴データ::売上日 ; 5 ; 2 ) ; Right ( 売上履歴データ::売上日 ; 2 ) ; Left ( 売上履歴データ::売上日 ; 4 ) )
受注No(テキスト)計算値:Lookup ( 売上履歴データ::受注No )
売上No(テキスト)計算値:Lookup ( 売上履歴データ::売上No )
※3つとも既存値を置き替え
Offline
良く分かりませんが、
複数の関連レコードから択一で、レコードIDを選び、
そのレコードIDで売上履歴テーブルとリレーションを組み、
以下でフィールド設定する、とか?
・売上日 (日付) 計算値:Date(Month(売上履歴::売上日); Day(売上履歴::売上日); Year(売上履歴::売上日))
・受注No(テキスト)計算値:Lookup(売上履歴::受注No)
・売上No(テキスト)計算値:Lookup(売上履歴::売上No)
Offline
複数の関連レコードがある場合、
リレーションオプションのソート順(なければ作成順)に従った最初のレコードの値がルックアップされます。
返品明細に同一「商品CD」の売上履歴レコードをポータルに表示していると仮定した場合、
ポータル行内にボタンを配置すればスクリプトで該当の売上履歴レコードの「売上日」「受注No」「売上No」等のフィールド値が取れます。
スクリプトは必要ですが機能のためのリレーションを追加する必要はありません。
Offline
Hiroさんの通り、
レコードIDのような売上履歴でユニークな値とリレーションすべきですね。
それと、、
> Date ( Middle ( 売上履歴データ::売上日 ; 5 ; 2 ) ; Right ( 売上履歴データ::売上日 ; 2 ) ; Left ( 売上履歴データ::売上日 ; 4 ) )
> Date(Month(売上履歴::売上日); Day(売上履歴::売上日); Year(売上履歴::売上日))
どちらも
売上履歴::売上日
そのものですよ。
Offline
売上伝票の中で、返品のフラグを立てておき、それを抽出するのが、単純で確実ではないでしょうか。
> Date ( Middle ( 売上履歴データ::売上日 ; 5 ; 2 ) ; Right ( 売上履歴データ::売上日 ; 2 ) ; Left ( 売上履歴データ::売上日 ; 4 ) )
から見ると、売上履歴データ::売上日 が YYYYMMDD になっているようですので、元データ側でを日付フォーマットに変換しておいた方が都合がいいと思いますよ。
Offline
チポ様、Moz様、Hiro様、Shin様
お返事ありがとうございます
リレーションを見直して無事、解決致しました
誠にありがとうございます
日付に関してもShin様のお察し通りで、変換しました
ありがとうございました
引続き宜しくお願い致します
Offline
Pages: 1
[ Generated in 0.009 seconds, 9 queries executed - Memory usage: 513.48 KiB (Peak: 518.02 KiB) ]